当前位置:  开发笔记 > 编程语言 > 正文

如何在我的代码中打印中文单词..使用python

如何解决《如何在我的代码中打印中文单词..使用python》经验,为你挑选了1个好方法。

这是我的代码:

print '??'.decode('gb2312').encode('utf-8')

...它打印:

SyntaxError: Non-ASCII character '\xe5' in file D:\zjm_code\a.py on line 2, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

我该如何打印'哈哈'?

更新: 当我使用以下代码时:

#!/usr/bin/python
# -*- coding: utf-8 -*-

print '??'

...打印???.这不是我想要的.

我的IDE是Ulipad,这是IDE的错误吗?

第二次更新:

此代码将正确打印字符:

#!/usr/bin/python
# -*- coding: utf-8 -*-


print u'??'.encode('gb2312')

......当我用它时:

#!/usr/bin/python
# -*- coding: utf-8 -*-

a='??'
print a.encode('gb2312')
Traceback (most recent call last):
  File "D:\zjm_code\a.py", line 5, in 
    print a.encode('gb2312')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 0: ordinal not in range(128)

...要么...

#!/usr/bin/python
# -*- coding: utf-8 -*-

a='??'
print unicode(a).encode('gb2312')
Traceback (most recent call last):
  File "D:\zjm_code\a.py", line 5, in 
    print unicode(a).encode('gb2312')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 0: ordinal not in range(128)

......它不起作用.我该如何a正确打印变量?

谢谢



1> Alex Martell..:

你首先需要声明的编码,作为错误信息说得很清楚-它甚至会告诉你看看这里的细节!大概是你的编码gb2312.

顺便说一下,它会更简单(使用相同的编码声明)

print u'??'.encode('utf-8')

encode如果您sys.stdoutencoding属性设置正确(取决于您的终端,操作系统等),您可能甚至不需要该部件.

推荐阅读
谢谢巷议
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有