我正在尝试打开一个 csv 文件并将行附加到列表中。我尝试了一些不同的东西,但我总是得到一个空列表。有什么建议吗?
>>> googleData = []
dataFile = open("googlePrices.csv", 'rU')
for row in dataFile:
googleData.append(row)
>>> googleData
[]
使用 csvreader http://docs.python.org/2/library/csv.html
import csv
csvr = csv.reader(open('googlePrices.csv' , 'r'))
for row in csvr:
....
一个好的做法是从 CSV 或任何其他文件中读取每一行。
一个可能的解决方案可能是这样的:
def main():
with open('sample.csv' , 'r') as f:
my_list = []
for line in f.readlines():
my_list.append(line)
print my_list
if __name__ == '__main__':
main()
更新 :
由于 readlines() 将文件的每一行读入内存,这个答案没有优化..
googleData = []
dataFile = open("googlePrices.csv", 'rU')
for row in dataFile:
googleData=googleData.append(panda.Dataframe(row))