python 在Windows 系统 cmd中输出中文字符的坑!

接手一个同事用py3写的程序,他是在苹果电脑上写的 输出测试的代码都是类似:

print('无法获取搜索内容',artid,ip,tit)

然后我在windows系统里面调试 一直给我输出 这样的:

('\xe6\x97\xa0\xe6\xb3\x95\xe8\x8e\xb7\xe5\x8f\x96\xe6\x90\x9c\xe7\xb4\xa2\xe5\x86\x85\xe5\xae\xb9', 1, '127.0.0.1', '\xe6\x88\x91\xe5\xb0\xb1\xe6\x98\xaf\xe6\x88\x91\xef\xbc\x8c\xe4\xb8\x8d\xe4\xb8\x80\xe6\xa0\xb7\xe7\x9a\x84\xe7\x83\x9f\xe7\x81\xab')

然后我再加上:

print(u'无法获取搜索内容',artid,ip,tit)

还是给我输出这样的:

(u'\u65e0\u6cd5\u83b7\u53d6\u641c\u7d22\u5185\u5bb9', 1, '127.0.0.1', u'\u6211\u5c31\u662f\u6211\uff0c\u4e0d\u4e00\u6837\u7684\u70df\u706b')

网上搜了一堆解决方法,像更改文字编码啊,文件编码啊,cmd输出编码啊都没有解决,测试了N多方法都无法看到正常的测试信息

最后用了最傻办法,一行一行打印,没有想到居然OK了,原理暂时还不了解,但是先记录下这个坑!

print(u'无法获取搜索内容')
print(artid)
print(ip)
print(tit)
无法获取搜索内容
1
127.0.0.1
我就是我,不一样的烟火

 

你可能感兴趣的:(个人心得)