读取 csv 文件 - 一个列表中的每个字符
csv file read - every single character in one single list
我是 python 的新手,确实需要一些帮助(我现在还没有找到任何对我有帮助的东西)。
我想将 csv 文件读入 list
,但遗憾的是我的输出与预期不符。而不是像这样的列表:
[[Weiz;61744],[Deutschlandsberg;5645]]
我有一个如下所示的列表:
[['W'],['e'],['i'], etc.]
我的代码如下所示:
def readCSV(file):
for row in open(file,"r+"):
ftpstream = urllib.request.urlopen(row)
csvFile = csv.reader(ftpstream.read().decode('latin-1'))
data = [row for row in csvFile]
for row in data:
print(row)
谁能告诉我为什么它不起作用?我现在真的很挣扎...
根据您的文件,我认为使用 readLine()
而不是 read()
应该可以达到您想要的效果。例如:
csvFile = csv.reader(ftpstream.readLine().decode('latin-1'))
而不是
csvFile = csv.reader(ftpstream.read().decode('latin-1'))
函数 csv.reader
需要接收行列表,而不是单个字符串(例如 ftpstream.read().decode('latin-1')
返回的)。如果替换:
csvFile = csv.reader(ftpstream.read().decode('latin-1'))
与
csvFile = csv.reader(ftpstream.read().decode('latin-1').split('\n'))
我相信它会如您所愿。
我是 python 的新手,确实需要一些帮助(我现在还没有找到任何对我有帮助的东西)。
我想将 csv 文件读入 list
,但遗憾的是我的输出与预期不符。而不是像这样的列表:
[[Weiz;61744],[Deutschlandsberg;5645]]
我有一个如下所示的列表:
[['W'],['e'],['i'], etc.]
我的代码如下所示:
def readCSV(file):
for row in open(file,"r+"):
ftpstream = urllib.request.urlopen(row)
csvFile = csv.reader(ftpstream.read().decode('latin-1'))
data = [row for row in csvFile]
for row in data:
print(row)
谁能告诉我为什么它不起作用?我现在真的很挣扎...
根据您的文件,我认为使用 readLine()
而不是 read()
应该可以达到您想要的效果。例如:
csvFile = csv.reader(ftpstream.readLine().decode('latin-1'))
而不是
csvFile = csv.reader(ftpstream.read().decode('latin-1'))
函数 csv.reader
需要接收行列表,而不是单个字符串(例如 ftpstream.read().decode('latin-1')
返回的)。如果替换:
csvFile = csv.reader(ftpstream.read().decode('latin-1'))
与
csvFile = csv.reader(ftpstream.read().decode('latin-1').split('\n'))
我相信它会如您所愿。