jzyling 发表于 2016-01-16 19:19

python字典中值含有中文,把字典变成string时,如何正确转化中文?

python字典中值含有中文,把字典变成string时,如何正确转化中文?


# -*- coding: utf-8 -*-
import string
a={}
a['1']='大'
astr = str(a)
print astr

结果还是 {'1': '\xe5\xa4\xa7'}如何显示成 {'1': '大'} 呢?

ssfjhh 发表于 2016-01-17 21:20

换用python3

bskay 发表于 2016-02-05 10:48

print'\xe5\xa4\xa7'.decode('utf-8')

一天睡三次 发表于 2016-02-19 16:22

我的一个不成熟的方案,请指点
#!/usr/bin/env python
#_*_ coding:utf-8 _*_
import string
a={}
a['1']='大'
for key in a:
    astr = str(a).decode('utf-8')
print astr

zl624867243 发表于 2016-02-19 22:31

本帖最后由 zl624867243 于 2016-02-21 12:38 编辑

我来一个:#coding:utf-8
a={}
a['1']='大'
#print a['1']

for (k,v) in a.items():
    kk = str(k)
    vv = str(v)
    print '%s:%s' %(kk,vv)    或者:#coding:utf-8
class MyDict(dict):
    def __str__(self):
      l = ["'%s':'%s'" % (i, k) for i, k in self.iteritems()]
      return '{' + ','.join(l) + '}'

a = {}
a['1'] = '大'

aa = MyDict()
aa['1']='大'
astr = str(a)
print aa
页: [1]
查看完整版本: python字典中值含有中文,把字典变成string时,如何正确转化中文?