轉載請注明:
仰望高端玩家的小清新 http://www.cnblogs.com/luruiyuan/
python程序對於unicode碼的支持情況不同
python3 支持較好,在文件開頭加入如下代碼即可工作
1 #-*- coding: utf-8 -*-
簡單例子如下:
1 #-*- coding: utf-8 -*- 2 3 print ('Hellow World\n') 4 print ('Hellow Again')
如果不加入上述代碼,則會提示存在無法解析的字符的問題
python2 則有缺陷,即使加入了上述代碼,中文在cmd輸出仍然會出現亂碼
例子如下
1 #-*- coding: utf-8 -*- 2 3 print 'Hellow World\n' 4 print 'Hellow Again' 5 print '你好'
結果如圖
修正方案:
有3個可行的方案:
- 在文件開頭加入
from __future__ import unicode_literals
1 #-*- coding: utf-8 -*- 2 from __future__ import unicode_literals 3 print ('Hellow World\n') 4 print ('Hellow Again') 5 print '你好'
2.在中文字符串前加字母u
#-*- coding: utf-8 -*- print ('Hellow World\n') print ('Hellow Again') print u'你好'
3. 更加推薦的是如下寫法,這種寫法修改的更徹底,並且中文字符串前不再需要u,並且能夠避免絕大部分編碼問題
1 from __future__ import unicode_literals 2 import sys 3 reload(sys) 4 sys.setdefaultencoding('gbk')
代碼如何換行?
在需要換行的地方加 \ 然后接着寫即可,親測python2 和python 3均可用
#python 2 print 'Compsed to the IDE, in the cmd, each print funciton will\ 'generate a new line' #python 3 print ('你好\ 呀')