【发布时间】:2010-12-25 11:00:22
【问题描述】:
这个脚本来自here:
import csv
from itertools import izip
f = open( '/django/sw2/wkw2/csvtest1.csv', 'r' )
reader = csv.reader( f )
keys = ( "firm_url", "firm_name", "first", "last", "school", "year_graduated" )
out = []
for property in reader:
property = iter( property )
data = {}
for key in keys:
data[ key ] = property.next()
out += [ data ]
print out
当我在 IDLE 中尝试时,我得到了错误
Traceback (most recent call last):
File "<pyshell#13>", line 5, in <module>
data [key] = property.next()
StopIteration
但我试过了
print out
再次打印出来
[{'school': 'The George Washington University Law School', 'last': 'Abbas', 'firm_url': 'http://www.whitecase.com/aabbas', 'year_graduated': ' 2005', 'firm_name': 'White & Case', 'first': ' Amr A '}, {'school': 'Ernst Moritz Arndt University Greifswald', 'last': 'Adam', 'firm_url': 'http://www.whitecase.com/kadam', 'year_graduated': ' 2004', 'firm_name': 'White & Case', 'first': ' Karin '}, {'school': 'Tashkent State Law Institute', 'last': 'Adjivefayev', 'firm_url': 'http://www.whitecase.com/vadjivefayev', 'year_graduated': ' 2002', 'firm_name': 'White & Case', 'first': ' Vilen '}]
但是当我尝试将它作为脚本运行时,它不起作用,我收到相同的错误消息。
谁能帮忙解决这个错误?
(它是否输出有效的 json?)
谢谢
编辑
感谢您的回答。似乎这不是将 csv 文件转换为 json 格式的正确方法。我只是想用其中的数据转换 csv 文件,以便我可以使用loaddata 在 django 中填充我的 sqlite3 数据库。请参阅 django 组中的此线程:http://groups.google.com/group/django-users/browse_frm/thread/a00b529ba2147d91 尝试使用 csv2json.py sn-p。今天在 OS 中的另一个线程(抱歉,我不能包含 2 个链接)。我很欣赏将 csv 转换为 json 的简单方法。或者您用来填充我应该使用的 django 数据库的方法。感谢您的帮助。
【问题讨论】:
-
另一个操作系统线程:stackoverflow.com/questions/1882469/…