下面的代码旨在循环浏览一个大型csv文件,一次获取20个观测数据块,并将它们加载到一个较小的文件中,该文件将用于地理编码。循环似乎没有运行,并且已经不知道为什么(除了end之外,没有超过第一行的内容被打印出来)
SalesLoad = open('C:\Users\DillonSaxe\Real Estate\Chi address 2000-2015.csv')
Sales = csv.reader(SalesLoad)
Storage = []
row_count = sum(1 for row in Sales)
print row_count
for row in Sales:
if Sales.line_num == 1:
Header = row
print header
elif Sales.line_num%20 != 0 and Sales.line_num != row_count:
Storage.append(row)
else:
Storage.append(row)
print row
TempLoad = open('C:\Users\DillonSaxe\Real Estate\Temp Geocode File.csv', 'wb')
TempGeocode = csv.writer(TempLoad)
TempGeocode.writerow(Header)
for item in Storage:
TempGeocode.writerow(item)
TempLoad.close()
SalesLoad.close()
print 'Done'
您可以使用enumerate测试行号并迭代文件一次
行
row_count = sum(1 for row in Sales)
将读取器放在文件的底部。在该行之后添加SalesLoad.seek(0)
,或者重构循环以不需要行数相关问题 更多 >
编程相关推荐