我正在尝试在python中将csv导入JSON:
myjson = list()
with open("stuff.csv","rU") as f:
vals = csv.DictReader(f)
for i in vals:
myjson.append(i)
当我使用csv的DictReader()时,我经常会在几乎所有记录中看到看似无效的unicode字符,例如:
\xc9
...在文本字段中。据我所知,这是一个有效的unicode字符,用于倒置e 。但是,因为它嵌入在较长的字符串中,所以它实际上是未编码的,并且整个键是str类型而不是类型unicode。
我认为这是我给出的数据条目或csv模块的遗留物,但有没有任何标记,标记或替代方式读取CSV,通过转换来适当处理这个?
答案 0 :(得分:0)
您正在查看Python字符串文字。 \xc9
序列是转义码,Python用于任何不可打印的代码点或代码点128.对于超过255的代码点,使用\uxxxx
转义序列。
默认情况下,Python将打印容器中包含的值的表示,例如列表或字典。 unicode值的表示(repr()
函数结果)打印为python字符串文字:
>>> print [u'Hello: \xc9']
[u'Hello: \xc9']
>>> print [u'Hello: \xc9'][0]
Hello: É