#navi(../)
* カンマ区切りの文字列(テキスト)をリスト(配列)に入れる方法 [#tb36e104]
PytnonでCSV形式になっているテキストを各項目ごとにリストに入れるサンプルコードを以下に記します。

#contents
#htmlinsertpcsp(ll-top.html,ll-sp.html)

* 関連記事 [#g07d4102]
-[[Pythonで文字列置換・replace>Python/サンプル/文字列の置換・replace]]
-[[Pythonで数値を文字列に変換する・str>Python/サンプル/数値を文字列に変換する・str]]
-[[Pythonで指定した文字で分割し配列(list)に格納する方法・split>Python/サンプル/指定した文字で分割し配列(list)に格納する方法・split]]
-[[Pythonで左右のスペース削除・strip, lstrip, rstrip>Python/サンプル/左右のスペース削除・strip, lstrip, rstrip]]
-[[Pythonでリストに格納されている要素に区切り文字を指定し出力する・join>Python/サンプル/リストに格納されている要素に区切り文字を指定し出力する・join]]
-[[Pythonで文字列の半角英字の大文字小文字化方法・upper,lower>Python/サンプル/半角英字の大文字小文字化方法・upper,lower]]
-[[Pythonで文字列のleft,mid,rightを実現する方法>Python/サンプル/文字列のleft,mid,rightを実現する方法]]
-[[Pythonで前方・後方文字列検索・find,rfind>Python/サンプル/前方・後方文字列検索・find,rfind]]
-[[Pythonでカンマ区切りの文字列をリストに入れる方法・split>Python/サンプル/カンマ区切りの文字列をリストに入れる方法]]
-[[Pythonでリストの要素追加、リストの連結、リストの連結、リスト内にリストを追加する方法>Python/サンプル/リスト要素追加,リストの連結,リスト連結,リスト内にリストを追加する方法]]
-[[Pythonでリストへの要素追加および削除>python/サンプル/リストへの要素追加および削除]]
-[[Pythonで英字の大文字・小文字を区別せず比較する方法・re>Python/サンプル/英字の大文字・小文字を区別せず比較する方法・re]]

* 動作確認環境 [#p8a57703]
 $ python --version
 Python 2.7.3

 $ lsb_release -d
 Description:    Ubuntu 12.04.4 LTS

* 文字列変数を使用したCSVテキストのリスト化 [#d0642eba]
以下に文字列変数上の各項目をリストに展開するサンプルコードを記します。~
splitメソッドを使えば簡単にリストに展開することができます。

構文
 文字列.split("区切り文字")

サンプルコード
 s = "foo,bar,hoge"
 l = s.split(",")
 print l

実行結果
 ['foo', 'bar', 'hoge']

実行結果を見ると、splitで指定したカンマで分割されリスト(配列)に展開されているのが確認できます。

* CSVファイルから1行ずつ取り出す [#o86e5c5b]
CSVファイルをオープンし一行ずつ読み込みリスト(配列)に展開するスクリプトです。~
使用したCSVファイルは以下の通りです。
#ref(data.csv)
 $ cat data.csv
 abc,def,ghi,jkl,mno,pqr,stu,vwx,yz
 ABC,DEF,GHI,JKL,MNO,PQR,STU,VWX,YZ

サンプルコード
#ref(csv2lst.py)
 #!/usr/bin/env python
 
 f = open('data.csv', 'r')
 
 for line in f:
     line = line.rstrip()
     l = line.split(",")
     print l
 f.close()

実行結果
 sakura@ubuntu:~/python$ chmod +x csv2lst.py
 sakura@ubuntu:~/python$ ./csv2lst.py
 ['abc', 'def', 'ghi', 'jkl', 'mno', 'pqr', 'stu', 'vwx', 'yz']
 ['ABC', 'DEF', 'GHI', 'JKL', 'MNO', 'PQR', 'STU', 'VWX', 'YZ']

上記のサンプルコードでrstripを使用しています。~
これは、行末の改行コードを削除しています。

以上、CSV形式のテキスト(ファイル)をリスト(配列)に展開する方法でした。

#htmlinsertpcsp(ll-btm.html,ll-sp.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS