windows下的cmd下運行.py文件,結果若有中問現實亂碼,如何解決?

如上圖,執行test1.py文件,包含中文的結果現實亂碼;如果在執行之前先將cmd切換為utf-8(chcp 65001),執行結果提示:
D:\program for wql\project\test\test1>python test1.py
Traceback (most recent call last):
? File "test1.py", line 2, in <module>
? ? print"你好,python~"
IOError: [Errno 22] Invalid argument
2018-04-19
這個交互式編碼是正常的,是調用py文件在window下執行結果顯示亂碼呢?,看一下我的運行方式,是在Windows下調用.py文件去執行,不是交互式編碼執行
2018-04-16
python2.x 腳本加上 # -*- coding: UTF-8 -*- 或者 #coding=utf-8 后windows 命令提示符下輸出中文字符串還會出現亂碼。
解決方法需要先使用 decode("utf-8") 轉換成 utf-8 編碼,然后使用 encode("gbk") 轉換成 gbk 編碼,才能在 windows 命令提示符下正常輸出中文。
原因是 windows 命令提示符的顯示編碼為 gbk 編碼。
例如:
>>> # -*- coding: UTF-8 -*-
>>> s="你好,python~ "
>>> print s.decode("utf-8").encode("gbk")
或者
print u"你好,python~"