1.windows下CMD運行.py文件出現亂碼
出現了亂碼
2.轉換完字符編碼,然後正確了
3.原因:
python2中,CMD默認gbk編碼,所以只能把代碼中的中文進行gbk編碼了。
utf-8通過解碼轉化爲unicode,然後將unicode編碼轉化爲gbk
# -*- coding: UTF-8 -*-
content="hello,feifei"
content_unicode = content.decode("utf-8")
content_gbk = content_unicode.encode("gbk")
print "hello,feifei";
4.python 2和python3的區別
1.編碼方式
python 2.x的字符串是有編碼的,默認爲ascii,但如果在其中寫中文的話,解釋器一般會報錯,所以都在代碼第一行或者第二行規定編碼格式:
# -*- coding:utf-8 -*-
想要轉換爲其他編碼,就要進行先解碼爲unicode再編碼的過程。
python 3.x的字符串類似python 2.x的unicode,是沒有經過編碼的,因此python 3.x的字符串沒有decode屬性,只有encode屬性,調用這個方法後將產生bytes類型的字符串(有點像python 2.x中的字符串),而bytes類型支持解碼操作。