现在我正在将一些数据写入csv文件。我直接将列表写入csv文件的一行,如下所示:
with open("files/data.csv", "wb") as f_csv:
writer = csv.writer(f_csv,delimiter = ',')
writer.writerow(flux_inteplt) ## here flux_inteplt is a list
但是当我读到如下数据时:
with open('files/data.csv','rb') as csvfile:
reader = csv.reader(csvfile, delimiter=' ')
for row in reader:
parts = row.split(",")
print parts[0]
它有一些问题AttributeError: 'list' object has no attribute 'split'
有没有人知道如何解决这个问题?
答案 0 :(得分:2)
行已经是list
,当你遍历阅读器对象时,你得到一个由你传递的分隔符分割的值列表,只需使用每一行:
for row in reader:
print row[0] # first element from each row
如果您使用逗号分隔值,请使用delimiter=','
而非delimiter=' '
,这取决于您在撰写时使用csv.writer(f_csv,delimiter = ',')
的事实。在写入时传递的分隔符是用于从输入迭代中分隔每个元素的分隔符,因此在读取时,如果要获得相同的输出,则需要使用相同的分隔符。
答案 1 :(得分:1)
import csv
with open('us-cities.csv','rb') as csvfile:
reader = csv.reader(csvfile, delimiter=' ')
for row in reader:
str1 = ''.join(row) #Convert list into string
parts = str1.split(",")
print parts[0]
答案 2 :(得分:0)
行已经是一个列表。无需拆分(: