unicode指字符集
utf8指编码方式存储
1、告诉解释器文件的编码方式
python 2中在文件前加上#conding=utf8 也可以用_*_ conding:gbk _*_
Python3中缺省解码就是utf8
2、代码中输出中文
Python根据sys.stdout.encoding(标准输出)进行转换
在字符终端显示‘cp936’ gbk
在pycharm集成开发环境中显示 utf8
print u '世界 你好啊'
3、包含中文字符写入文件,编码 encode('utf8')
with open(fileName) as f:
f.write(‘你好吗’.encode('utf8'))
4、包含中文字符的文件读取文件,解码decode('utf8')
with open(fileName) as f:
f.read().decode('utf8')
5、ntfs文件系统,文件名都是utf-16编码
with open(u'中文.txt') as f:
f,read().decode('utf8')
6、用户输入中文
windows操作系统会发生3个wm_char消息给当前应用(如pycharm或notepad++)
wm_char消息里面的编码是utf_16,应用程序根据自身的设置,进行不同的处理
如输入新文件名称:newFileName=raw_input('请输入新文件名:'.decode('utf8').encode('gbk'))