为什么字符串在列表内部和python外部显示不同?
我正在抓取一个网页,我猜得到的是utf-8文本。因此,发生了以下情况:为什么字符串在列表内部和python外部显示不同?,python,string,encoding,Python,String,Encoding,我正在抓取一个网页,我猜得到的是utf-8文本。因此,发生了以下情况: # -*- coding: utf-8 -*- import urllib2 import json url = '....' data = json.load(urllib2.urlopen(url)) a = u'\u0391\u0391\u039b\u0395\u039d' print a ΑΑΛΕΝ print [a] [u'\u0391\u0391\u039b\u0395\u039d'] 知道为什么第二次不显示
# -*- coding: utf-8 -*-
import urllib2
import json
url = '....'
data = json.load(urllib2.urlopen(url))
a = u'\u0391\u0391\u039b\u0395\u039d'
print a
ΑΑΛΕΝ
print [a]
[u'\u0391\u0391\u039b\u0395\u039d']
知道为什么第二次不显示为第一次吗?
print
对参数隐式调用str
,但对所有内部元素的列表调用repr
。e、 g:
>>> class Foo(object):
... def __str__(self):
... return 'world'
... def __repr__(self):
... return 'hello'
...
>>> f = Foo()
>>> print repr(f)
hello
>>> print f
world
>>> print [f]
[hello]
有没有办法正确地显示它?取决于你所说的正确<代码>,。join(str(x)表示f中的x)是一个开始。。。