在Python中加载JSON文件而不使用密钥中的u

时间:2014-03-08 15:06:49

标签: python json

我正在使用图表在Python上做一些工作,并希望在文件中保存一些结构,以便在我恢复工作时可以快速加载它们。其中一个是使用json.dump以JSON格式保存的字典。

当我用json.load加载它时,键已从" 1"到你的1'。这是为什么?这是什么意思?我该怎么改变它?我稍后使用这些键来制作一些列表,然后我将使用原始图表,哪些节点是键(以整数形式),这会导致比较中出现问题......

3 个答案:

答案 0 :(得分:3)

u'或u“”只表示这是一个unicode字符串。除非您需要字节字符串,否则通常不应该出现任何问题。虽然我希望您的原始数据已经是unicode,但它应该不是问题。

答案 1 :(得分:3)

u前缀表示Unicode字符串。在Python 2.x中,您可以将其转换为str()的常规字符串。但这不应该是必要的; u'1' == '1'因为Python会在比较之前为您进行任何转换。

答案 2 :(得分:0)

这是一个unicode字符串。在大多数情况下,您可以将其视为普通的python字符串。如果您真的想将其转换为普通字符串,请使用 str()。如果需要将其转换为 bytes 类型,请使用 object.encode(encoding),其中encoding是Unicode字符的编码,通常为'utf-8 “