急求助:python中文兼容问题,striing/list/dict不同显示结果?

来源:百度知道 编辑:UC知道 时间:2024/05/17 07:06:20
python在中文兼容方面的问题,很棘手! 望高手帮助解决?

编辑test.py文件,如下:
# -*- coding: cp936 -*-
a = '中文'
b = ['中文']
c = [1:'中文','中文':2]

print a
print b
print c

运行之后,在shell当中得到的结果:

中文
['\xd6\xd0\xce\xc4']
{'\xd6\xd0\xce\xc4': 2, 1: '\xd6\xd0\xce\xc4'}

如何才能让运行之后的结果,list和dict当中的中文也正确显示呢? 多谢多谢!!

# -*- coding: cp936 -*-
a = '中文'
b = ['中文']
c = {1:'中文', '中文':2}
dstring = ''
lstring = ''

# 列表要整理一下,但前列表只有一个元素,但是真实环境中可能不止一个,
# 加一个处理过程。
for item in b:
if b[-1] == item:
lstring += '%s' % item
else:
lstring += '%s, ' % item

# 处理字典
for t in c.keys():
fill = '%s : %s' % (t, c[t])
dstring += fill
if c.keys().index(t) +1 != len(c):
dstring += ', '

print a
print '[%s]' % lstring
print '{%s}' % dstring
===============
我也是刚试出来。
但是,那个字典的定义好像有问题。
这段代码执行以后和定义的数据室一样的。
>>> =============== RESTART ===============
>>>
中文
[中文]
{中文 : 2, 1 : 中文}
>>>

如果这样:
>>> a 回车
'\xd6\xd0\xce\xc4'
其实这才是a中的数值,'中文'是在显示