Windows 下 Pycharm 的正确编码设置?

新手上路,请多包涵

在 Pycharm 中运行以下程序:

#! /usr/bin/python
# -*- coding: utf8 -*-

print "running test..."
print u"测试"

w = raw_input(u"输入:".encode("mbcs"))
print u"%s" % (w)

a = u"中文"
print u"Show As: %s" % (a)

在控制台中输出始终存在乱码:

running test...
����
���룺aaa
aaa
Show As: ����

但是,该程序在 Windows 的命令行中运行正常:

running test...
测试
输入:aaa
aaa
Show As: 中文

这里 PyCharm 的 “IDE Encoding” 和 “Project Encoding” 无论设置为 UTF-8 还是 GBK 对乱码均没有显著效果。但是,如果直接

print "测试"

却可以正常输出。

请教一下大家,这里该怎么设置才能保证各平台下中文显示均正常?(注:chcp 为 936)

阅读 13.1k
4 个回答

在setting里面把file encoding改成utf-8就好。

-- coding: utf8 -

这个要写在第一行

w = raw_input(u"输入:".encode("mbcs"))
你已经设定用utf-8编码了,我不太明白问什么又去用mbcs。
修改2个地方后我运行没有问题。
1==〉 w = raw_input(u"输入:")
2==〉 Pycharm中将Project Encoding设置为UTF-8(File-Setting-Editor-File Encodings)

我运行后的结果如下:

#! /usr/bin/python
# -*- coding: utf8 -*-

print "running test..."
print u"测试"

w = raw_input(u"输入:")
print u"%s" % (w)

a = u"中文"
print u"Show As: %s" % (a)
C:\Python27\python.exe C:/Python27/mystudy/3.py
running test...
测试
输入:aaa
aaa
Show As: 中文

Process finished with exit code 0

遇到同样问题,我刚搞定,“IDE Encoding”设置为UTF-8,“Project Encoding” 设置为GBK。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题