Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在dict列表中进行编码_Python_Python 2.7_Encoding_Python 2.x - Fatal编程技术网

Python 在dict列表中进行编码

Python 在dict列表中进行编码,python,python-2.7,encoding,python-2.x,Python,Python 2.7,Encoding,Python 2.x,我有一个dict的列表mylist,有一个编码问题: >>print mylist [{u'param1': u'foo',u'param2': u'Special char \xe9'}, ...] >>for item in mylist: >> print item {u'param1': u'foo',u'param2': u'Special char \xe9'} ... >>for item in input: >>

我有一个dict的列表
mylist
,有一个编码问题:

>>print mylist
[{u'param1': u'foo',u'param2': u'Special char \xe9'}, ...]

>>for item in mylist:
>>    print item
{u'param1': u'foo',u'param2': u'Special char \xe9'}
...

>>for item in input:
>>    for i in item:
>>        print 'Key: %s Value: %s' % (i, item[i])
Key: param1
Value: foo
Key: param2
Value: Special char é
\xe9
é

如何修改编码以直接使用:

>>print mylist
[{param1: 'foo',param2: 'Special char é'}, ...]

实际上,它已经用正确的方式编码了。但是,如果您
打印
字典,它会调用键和值上的
repr(..)
,然后使用转义编码。但是,如果您
打印(..)
一个特定值,它将根据您的需要显示它,因为使用了
str(..)
\xe9
仅为方便程序员,您可以轻松复制输出并将其馈送至程序:

$ python
Python 2.7.12 (default, Nov 19 2016, 06:48:10) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> mylist = [{u'param1': u'foo',u'param2': u'Special char \xe9'}]
>>> print(mylist[0]['param2'])
Special char é

您不能,因为这只是对列表成员调用
\uuuu repr\uuu
的结果;但更重要的是,您不需要这样做,因为绝对没有理由依赖此输出。