我想看看时区的名字。下面是Python2中的代码:
Python 2.7.6 (default, Nov 10 2013, 19:24:24) [MSC v.1500 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> import time
>>> time.tzname
('\xd6\xd0\xb9\xfa\xb1\xea\xd7\xbc\xca\xb1\xbc\xe4', '\xd6\xd0\xb9\xfa\xcf\xc4\xc1\xee\xca\xb1')
>>> a = time.tzname[0]
>>> print(a)
中国标准时间 # correct output
到目前为止还不错。我的电脑是Windows7,默认编码为gbk
。你知道吗
然后我尝试了Python3:
>>> time.tzname
('Öйú±ê׼ʱ¼ä', 'ÖйúÏÄÁîʱ')
>>> a = time.tzname[0]
>>> print(a)
Öйú±ê׼ʱ¼ä
那么当使用Python3的时候到底发生了什么?如何获得正确的输出?你知道吗
一开始我并不想回答这个问题,但写完整个问题后,我找到了答案,就把它写了下来。你知道吗
原因是它没有使用正确的编码,应该使用
gbk
,但是Python选择了latin-1
。这证明了:相关问题 更多 >
编程相关推荐