for循环不能在python中使用csv文件

时间:2016-06-24 14:34:01

标签: python csv pycharm

我在python中编写一个脚本来读取.csv文件并在行的基础上打印它。我在执行时没有收到任何错误,但它没有打印出来。 代码如下。

import os
import csv

os.chdir('C:\ingenium')

exampleFile = open('testt.csv')
exampleReader = csv.reader(exampleFile)
exampleData = list(exampleReader)
for row in exampleReader:
    print (row)
exampleFile.close()

后来我发现单词“row”在代码中没有任何意义,因为我用任意随机字符串替换“row”(例如:“gcgc”)它没有显示任何错误。 。 我使用Pycharm作为IDE。

3 个答案:

答案 0 :(得分:3)

你的错误在这里:

exampleData = list(exampleReader)

您已经耗尽了生成器对象exampleReader,因此当您迭代它时,您将无法获得任何内容。

您应该迭代新列表:

for row in exampleData:
    print(row)

答案 1 :(得分:0)

试试这个:

import os

import csv

os.chdir('C:\ingenium')

exampleFile = open('testt.csv','r')
exampleReader = csv.reader(exampleFile)
for row in exampleReader:
    print (row)
exampleFile.close()

正如摩西所说,你已经通过将csv导入列表而耗尽了csv.reader。

答案 2 :(得分:0)

鉴于具体任务,打印线条,可能值得玩更简单的文件处理。

import os
os.chdir('C:\ingenium')

lines = open('testt.csv','r').readlines()
for line in lines:
    print (line)