我正在尝试使用一个非常大的数据集,其中包含一些非标准字符.根据工作规范,我需要使用unicode,但我很困惑.(并且很可能做错了.)
我使用以下命令打开CSV:
15 ncesReader = csv.reader(open('geocoded_output.csv', 'rb'), delimiter='\t', quotechar='"')
Run Code Online (Sandbox Code Playgroud)
然后,我尝试用以下代码对其进行编码:
name=school_name.encode('utf-8'), street=row[9].encode('utf-8'), city=row[10].encode('utf-8'), state=row[11].encode('utf-8'), zip5=row[12], zip4=row[13],county=row[25].encode('utf-8'), lat=row[22], lng=row[23])
Run Code Online (Sandbox Code Playgroud)
我正在编码除了lat和lng之外的所有内容,因为那些需要发送到API.当我运行程序将数据集解析为我可以使用的内容时,我得到以下Traceback.
Traceback (most recent call last):
File "push_into_db.py", line 80, in <module>
main()
File "push_into_db.py", line 74, in main
district_map = buildDistrictSchoolMap()
File "push_into_db.py", line 32, in buildDistrictSchoolMap
county=row[25].encode('utf-8'), lat=row[22], lng=row[23])
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd1 in position 2: ordinal not in range(128)
Run Code Online (Sandbox Code Playgroud)
我想我应该告诉你我正在使用python 2.7.2,这是django 1.4上构建应用程序的一部分.我已经阅读了几个关于这个主题的帖子,但似乎都没有直接适用.任何帮助将不胜感激.
您可能还想知道导致该问题的一些非标准字符是Ñ并且可能是É.