在Python2.7中使用Unicode转义时出现奇数工件

在Python2.7中使用Unicode转义时出现奇数工件,python,python-2.7,unicode,Python,Python 2.7,Unicode,我有一段代码是这样的: if temp < 244: return ("<-20 "+u"\u00B0"+"F") 如果温度>s=“您看到的是字符串的表示,而不是字符串本身 也许这会澄清: >>> s = "<-20 "+u"\u00B0" >>> s u'<-20 \xb0' >>> type(s) <type 'unicode'> >>> repr(s) "u'<-20

我有一段代码是这样的:

if temp < 244:
    return ("<-20 "+u"\u00B0"+"F")
如果温度<244:

return(“您看到的是字符串的表示,而不是字符串本身

也许这会澄清:

>>> s = "<-20 "+u"\u00B0"
>>> s
u'<-20 \xb0'
>>> type(s)
<type 'unicode'>
>>> repr(s)
"u'<-20 \\xb0'"
>>> print s
<-20 °
>>> s == u"<-20 °"
True
>>> s == u'<-20 \xb0'
True
>>> s.encode('utf-8')
'<-20 \xc2\xb0'
s.encode('latin1')
'<-20 \xb0'

>>s=“您看到的是字符串的表示,而不是字符串本身

也许这会澄清:

>>> s = "<-20 "+u"\u00B0"
>>> s
u'<-20 \xb0'
>>> type(s)
<type 'unicode'>
>>> repr(s)
"u'<-20 \\xb0'"
>>> print s
<-20 °
>>> s == u"<-20 °"
True
>>> s == u'<-20 \xb0'
True
>>> s.encode('utf-8')
'<-20 \xc2\xb0'
s.encode('latin1')
'<-20 \xb0'

>>s=“您是在打印此函数的结果,还是在交互式解释器中对其进行评估?这有很大区别。我是用pprint打印的,它显然使用了repr().您是在打印此函数的结果,还是在交互式解释器中对其进行评估?这有很大的区别。我是用pprint打印的,它显然使用了repr()。我自己才意识到。哇!我自己才意识到。哇!