CSV行での小文字関数の使用

I'm trying to print all data from a csv in lowercase, but I'm not having any luck.

Here's what I have so far:

import csv
books = csv.reader(open("books.csv","rb"))

for row in books:
    print row

これはcsvのすべての内容を出力しますが、 .lower()関数を追加するとエラーが発生します。

私は間違って何をしていますか?

4

1 答え

試す

print [r.lower() for r in row]
7
追加された
行のステートメントに似ています。任意の変数名に変更できます。
追加された 著者 Dogbert,
これは、リスト内包表記のローカル変数名です(もし正しいとすれば、Python 3.xでローカルになっています) print [item.lower()in item for row] Python 2.xで宣言されています)
追加された 著者 Xavier Combelle,
@ mantissa45 diveintopython.net を試してください
追加された 著者 Roman Dolgiy,
おかげでドッグベルト!質問 - この場合、「r」は正確に何をしますか?
追加された 著者 mantissa45,