win10中文版,python的print不能打印中文字符?

JeanLove 2018-05-12 06:37:27
#!/usr/bin/env python
# -*- coding: utf-8 -*-
print "这里"

如果我不加第二行,python运行这个会告诉我

SyntaxError: Non-ASCII character '\xe8' in file testCn.py on line 3, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details


我加上了以后,打印的结果是乱码:
D:\Documents\myrep\lang\py>python testCn.py
杩欓噷


这是为什么呢?我的win10是中文版,区域和语言也是北京时间,中文。为什么python的print打印不出来中文?

还是需要做一些设置呢?
...全文
557 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
JeanLove 2018-05-12
  • 打赏
  • 举报
回复
好吧,python3是可以的。
JeanLove 2018-05-12
  • 打赏
  • 举报
回复
引用 2 楼 qq_26877377 的回复:
是编码格式问题,py2 默认不是UTF-8,是ACSII码 你把# -*- coding: utf-8 -*- 改成# -*- coding: gbk -*- 试试
这样改了以后更不行了:

  File "d:\Documents\myrep\lang\py\testCn.py", line 0
SyntaxError: 'gbk' codec can't decode bytes in position 531-532: illegal multibyte sequenc
  • 打赏
  • 举报
回复
是编码格式问题,py2 默认不是UTF-8,是ACSII码 你把# -*- coding: utf-8 -*- 改成# -*- coding: gbk -*- 试试
JeanLove 2018-05-12
  • 打赏
  • 举报
回复
但是我如果从命令行启动python,在repl模式下就没有这个问题:
Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:53:40) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print "这里"
这里
>>>
这也太奇怪了吧

37,719

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧