【发布时间】:2013-12-19 20:49:39
【问题描述】:
这是一个例子:
d = dict(a = 2)
print d
{'a': 2}
我怎样才能告诉dict() 构造函数使用Unicode 而不是写像u'a' 这样的字符串文字显式?我正在从默认使用 unicode 的 json 模块加载字典。我想从现在开始使用unicode。
【问题讨论】:
标签: python unicode dictionary python-2.x
这是一个例子:
d = dict(a = 2)
print d
{'a': 2}
我怎样才能告诉dict() 构造函数使用Unicode 而不是写像u'a' 这样的字符串文字显式?我正在从默认使用 unicode 的 json 模块加载字典。我想从现在开始使用unicode。
【问题讨论】:
标签: python unicode dictionary python-2.x
要获取带有 Unicode 键的 dict,请在构造 dict 时使用 Unicode 字符串:
>>> d = {u'a': 2}
>>> d
{u'a': 2}
从关键字参数创建的字典总是有字符串键。如果您希望这些是 Unicode(以及所有其他字符串),请切换到 Python 3。
【讨论】:
dict()。那是使用 Python 关键字,它们总是(字节)字符串。
2.x 中的关键字参数只能使用 ASCII 字符,即字节串。要么使用 dict 文字,要么使用允许指定完整类型的构造函数之一。
>>> dict(((u'a', 2),))
{u'a': 2}
【讨论】:
3>> dict(a=2, あ=3){'あ': 3, 'a': 2}