『壹』 請問,python打開中文字元文件,但顯示不出中文怎麼辦
一般是編碼格式的問題,python內部默認的編碼格式是utf-8,常見的文本編碼格式是utf-8,gbk。編碼格式不不一致就會亂碼。可以在代碼前面申明編碼格式。
『貳』 python怎麼輸出中文
打開Python編譯器,在代碼的第一行設置編碼格式,加入#-*-coding:utf-8-*-即可。
相關推薦:《Python基礎教程》
如下:
『叄』 python怎麼顯示中文
# -*- coding:gb2312 -*-
加上這句
『肆』 python3怎麼輸出中文字元
直接使用print( '中文漢字')
這樣就可以輸出中文 需要把文件存成utf-8編碼
『伍』 如何在運行python的時候顯示中文
最前面加上 #coding:utf-8
如果是字元串的輸出有問題可以用decode eg:
your_str.decode('utf-8')
也可以這樣:
print u"your_str"
『陸』 python界面怎麼調成中文版
python設置中文界面的方法:
找到windows10中文字體所在文件夾
C:/Windows/Fonts/
在代碼前面加上:
import matplotlib.pyplot as plt plt.rcParams['font.sans-serif']=['simhei'] # 添加中文字體為黑體 plt.rcParams['axes.unicode_minus'] =False ... #ax[0, 0].set_ylabel(u"哈哈") #
注意前面加上'u'. #ax[2, 0].set_ylabel(u"嘿嘿") ... #或 import matplotlib.pyplot as plt from matplotlib import font_manager my_font =
font_manager.FontProperties(fname="C:/Windows/Fonts/simsun.ttf") # 添加中文字體為黑體 ... ax[0, 0].set_ylabel(u"哈哈", fontproperties=my_font) ax[2, 0].set_ylabel(u"嘿嘿", fontproperties=my_font)
發展歷程
自從20世紀90年代初Python語言誕生至今,它已被逐漸廣泛應用於系統管理任務的處理和Web編程。
1995 年,Guido van Rossum 在弗吉尼亞州的國家創新研究公司(CNRI)繼續他在 Python 上的工作,並在那裡發布了該軟體的多個版本。
2000 年五月,Guido van Rossum和 Python 核心開發團隊轉到 BeOpen.com 並組建了 BeOpen PythonLabs 團隊。 同年十月,BeOpen PythonLabs 團隊轉到 Digital Creations (現為 Zope Corporation)。
2001 年,Python 軟體基金會 (PSF) 成立,這是一個專為擁有 Python 相關知識產權而創建的非營利組織。 Zope Corporation 現在是 PSF 的贊助成員。
『柒』 在Python3中如何輸出中文
例子:a="您好"
print(a)
就直接運行還會報錯的原因是本人本人新建的文件編碼默認是ANSI,需要修改一下文件的編碼為utf-8,就可以了。
修改文件編碼可以這樣做:用系統自帶的記事本打開,然後按另存為,在保存的時候,會可選擇的編碼。
『捌』 python中如何將字典中的中文顯示出來
在python腳本的第一行加上#encoding=utf-8即可。
程序如下:
'''
Created on 2011-9-24
@author: legendxx
'''
#encoding=utf-8
f=file("test.txt","r")
print f.readline()
f.close
test.txt的內容只讀取第一行,可以正常列印出來中文。
『玖』 python 無法顯示漢字
實際上,這段代碼所出現的問題和cPickle模塊沒什麼關系。而是Python 2顯示中文「亂碼」的問題。
Python 2中,str是8-bit string sequence(有點像Python 3中的bytes)。而Python 3中str就相當於Python 2中的unicode。
所以,
>>>a='上海'
>>>repr(a)
"'\xc9\xcf\xba\xa3'"
>>>a#a中存儲的8位元組轉義字元序列
'xc9xcfxbaxa3'
>>>printa#輸出a,在此過程中,會對a進行解碼操作,然後輸出
上海
上例中,可以看到:
a = '上海'
a中實際存儲的是:
'xc9xcfxbaxa3'
這樣一個位元組序列。它實際上是對'上海'這個unicode字元串按gbk/cp936/gb18030編碼得到的(和簡體中文Windows操作系統的默認編碼有關)。
給你推薦一篇博客:
http://blog.csdn.net/kiki113/article/details/4062063
下面是我寫的示例:
#_*_coding:gbk_*_
#TestwithPython2.7,Python3.3onWindowsXP
try:
importcPickleasp
except:
importpickleasp
address_file='address.txt'
classHuman(object):
def__init__(self,address):
self.address=address
deftxl(self):
af={'address':self.address}
print(af)
print(af['address'])
f=open(address_file,'wb')#Inpython3,usebinarymode.
#Inpython2.7,defaultprotocolis0.
#However,itis3inpython3.3.
p.mp(af,f,0)
f.close()
address='上海'
print(address)
dq=Human(address)
dq.txl()
af=open(address_file,'rb')#
print(p.load(af))
af.close()
"""
Output
----------------------------------------
Python2.7.6:
1.#-*-coding:utf-8-*-
涓婃搗
{'address':'xe4xb8x8axe6xb5xb7'}
涓婃搗
{'address':'xe4xb8x8axe6xb5xb7'}
2.#-*-coding:gbk-*-or#_*_coding:cp936_*_
上海
{'address':'xc9xcfxbaxa3'}
上海
{'address':'xc9xcfxbaxa3'}
Python3.3.3:
上海
{'address':'上海'}
上海
{'address':'上海'}
------------------------------------------
InPython3.3.3:
>>>'上海'.encode('utf-8')
b'xe4xb8x8axe6xb5xb7'
>>>_.decode('cp936')
'涓婃搗'
"""
從這個示例中可以看出,雖然把字典整個print出來不能正常解析address中的內容:
>>>addr={'addr':'上海'}
>>>addr
{'addr':'xc9xcfxbaxa3'}
>>>printaddr
{'addr':'xc9xcfxbaxa3'}
但是單獨列印:
>>>addr['addr']
'xc9xcfxbaxa3'
>>>printaddr['addr']#print輸出之前隱含了編碼解碼操作,但為何列印整個字典時輸出不正常尚待研究
上海
一切OK。
所以,如果真的用Python 2的話,對於該問題可以考慮手工負責編碼、解碼操作(如果使用print單獨列印地址信息,就不用這么麻煩了,因為這些事它幫你做了)。用Python3,就沒這么多問題了。
最後補充一點,pickle模塊只是提供了一種序列化Python對象的方法。所以序列化生成的文件中和想像的不一樣也不足為奇。正如自由de王國所說的,只要序列化後還能夠反序列化成功就行了。實際上,當protocol不是0的情況下,序列化生成的文件是二進制格式的,根本沒法用記事本直接看。
『拾』 python如何輸入輸出中文
1,在文件夾中新建一個test.py的文件。