2019年6月24日PythonをつかってCSV形式で読み書きしたいけど、やり方がわからない。こんな疑問を解決します。今回はCSV形式でデータを扱うための方法についてまとめました。この記事を読めば、CSVファイルを読み込んだり、データを保存することができるようになります。僕自身が勉強していて気付いたことなのですが、機械学習でもスクレイピングでも、何かしらデータを保存する方法が必要になります。目的が違うコードでもデータの保存時にはCSV形式を使っていることが多かったので、初心者のうちから覚えておくことをおすすめしたいです。この記事ではCSV形式のデータを扱う方法について、初心者から中級者になるまでに必要な部分をまとめてみました。■まとめ■PythonでCSV形式で読み書きする方法わからない方へ向けて、簡単にCSV形式について説明しておきますと、CSV形式とは、データの1つ1つが”,(コロン)”で区切られている形式のことを指します。“みかん”のように保存されていきます。前置きが長くなりましたが、CSV形式で読み書きする基本的な部分を解説していきます。初めに、CSVファイルを読み書きするために、CSVモジュールをインポートしましょう。csv・CSVファイルに書き込む、保存CSVファイルに書き込むコードは、以下の通りです。listという名前のリスト型データをcsvfile.csvというファイルに書き込みを行います。open~~)の説明>“file.csv”:保存するCSVファイルの名前”a”:ファイルの開き方を指定する文字列。ファイルディスクリプタという。‘:Python3系だとopen時に要素間に空欄ができる。“utf-8”:utf-8の文字コードで保存する。csv~~)の説明>CSVモジュール内のwriterオブジェクトを使う宣言。lineterminator=”\n”:改行で区切るように保存する<5行目(writer.writerow(list))の説明>上で宣言したwriterオブジェクト内のwriterowメソッドで書き込み。writerowで書き込むと、改行せずに各要素を書き込みます。みかんwriterowsで書き込むと、改行して各要素を書き込みます。ex)りんごみかん基礎的なCSV形式での書き込み方法は以上です。・CSVファイルを読み込む次にCSV形式で保存したデータを読み込む方法について解説します。基礎的なコードは以下のとおりです。rf:list.append(row)先の書き込みのコードと異なるのは5行目のreaderオブジェクトを使っている部分です。CSVファイルを読み込む際に必要になります。ちなみに、CSVモジュールは、各行をリストとして読み込みます。f:と記述すると、読み取ったデータを改行しながら処理することができます。上のコードでは、listという名前のlist型変数に、1行ずつ読み込みを行っています。ここまでで、CSV形式でデータの読み込みを行う方法の解説は終わりになります。■CSVモジュールを使いこなすために覚えておくべき内容さて、基礎的なCSV形式の読み書きの方法を理解したところで、CSVモジュールを使いこなすために覚えておくべきことを2つほど紹介します。”で囲われた文字列のことをファイルディスクリプタをいうんでしたね。このファイルディスクリプタには、いくつか種類があるので覚えておくと後々重宝します。追記の”a”と書き込み専用の”w”は使い分けられるようにしておきましょう。バイナリーモードで開く.・CSVモジュールのメソッド一覧CSVモジュールで扱えるメソッドには、以下のようなものがあります。全部を覚える必要はありませんが、必要に応じて使いこなすと便利ですね。各メソッドを扱う際は、オブジェクトの定義が必要になりますので、具体的には以下のようなコードで使うことができます。lineterminator="\n")writer.writerow(list)■まとめいかがでしたでしょうか。CSV形式はデータを扱うもっともベーシックな形式だそうなので、覚えてようとしなくても、自然と覚えられます。前もって覚えておくと、コーディング時に余計な検索をしなくて済むのでPythonを始めたばかりの方には特に覚えておくことをおすすめしたいです。最後まで読んでいただきありがとうございました。独学でPythonをやっている方におすすめです。基礎的な文法を抑えた方が、プログラマとして働くために必要なスキルを学べる書籍です。Pythonを仕事にしたい方は読んでも損がないです。管理人プロフィール当サイト(your-3d.com)の管理人のゆあーさんと申します。このサイトでは、私がZBrushやunityなどで調べたことを共有出来たらいいなと思い開設しました。読んでくださった皆様のお役に立てたら幸いです。https://your-3d.booth.pm/プロフィールページ作りました。APIの申請手順まとめ【2019年最新版】Mecabで形態素解析:品詞分解する方法【Python】Tensorflow-gpuインストール時の注意点:Win初心者がPythonで顔認識してみた【カスケードファイル】Atomのインストール&日本語化の手順を詳しく解説【Windows】Pythonで画像をスクレイピングしてみた。3d管理人のゆあーさんです。生まれは北国、現在は東京に住んでます。趣味はプログラミング、モデリング、あとブログです。このブログに書いている内容ですね。ゲームもたまにしてます。