python 在windows 中文顯示
阿新 • • 發佈:2017-12-22
存在 代碼 port ensure nbsp ascii class syntax character
今天看到mechanize,在網上找例子實驗,發現只要代碼裏出現中文,就會報錯
SyntaxError: Non-ASCII character ‘\xe4‘ in file testMech.py on line 2, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
python的默認編碼文件是用的ASCII碼
如果python文件中使用了中文等非英語字符,就會報錯了
解決的方法
在Python源文件的第一行加上
# coding=UTF-8
或者
# -*- coding:UTF-8 -*-
輸出
# -*- coding:UTF-8 -*- string=‘你好‘ print string
改為
# -*- coding:UTF-8 -*- string=‘你好‘ print string.decode(‘UTF-8‘)
中文字符串是保存在元組、列表或者字典裏,可以調用json模塊的dumps方法
# -*- coding:UTF-8 -*- import json print u‘你好‘ string=‘你好‘ print string.decode(‘UTF-8‘) t_tuple=(‘嗨‘,‘你好‘) t_list=[‘嗨‘,‘你好‘] t_dict={1:‘嗨‘,2:‘你好‘} print json.dumps(t_tuple,encoding=‘UTF-8‘,ensure_ascii=False) print json.dumps(t_list,encoding=‘UTF-8‘,ensure_ascii=False) print json.dumps(t_dict,encoding=‘UTF-8‘,ensure_ascii=False)
python 在windows 中文顯示