❶ python為什麼代碼中有中文老會出錯
漢字字元串前面加個u試試:
u"哈哈啊哈"
這樣
❷ notepad++ python 源代碼中含有中文 utf8無bom編碼 無法編譯
print u'哈哈'
---------------------------------
Python 2 裡面默認所有字面上的字元串都用ASCII編碼,可以通過在字元串前面加一個『u』前綴的方式聲明Unicode字元串,這個『u』前綴告訴Python後面的字元串要編成Unicode字元串
-------------------------------------------------------------------------------------------------------------。
print 函數嚴重受IDE編碼環境的影響,本來 print u'碰扮毀哈哈笑備'肯定能成功,因為u'哈哈'是unicode,
但是受缺芹ide的影響, print 強行把u'哈哈' 轉換成了 '哈哈' (字元類型),然後失敗了
---------------------------------------------------------------------------------------------
所以建議不要用notepad++這個ide
❸ 如何解決Python中文問題
python的中文問題一直是困擾新手的頭疼問題,Python的發行版至今尚未包括任何中文支持模塊。當然,幾乎可以確定的是,在將來的版本中,python會徹底解決此問題,不用我們這么麻煩了。 筆者使用的是2.5版本。Python的版本可以通過調用sys模塊的sys.version查看。在幾個月的學習中,主要遇到以下問題:
1. print列印中文的問題:
在編輯器中輸入一段測試代碼:
s=』測試』
print s
運行結果如下:
Non-ASCII character '\xb2' in file c:\Documents and Settings\Administrator\桌面\2.py on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details: 2.py, line 1, pos 0
原因是如果文件里有非ASCII字元,需要指定編碼聲明。把2.py文件的編碼重新改為utf-8,並加上編碼聲明:
# -*- coding: utf-8 -*-
s=』測試』
print s
運行後可以正確列印中文。
2.中文路徑的問題。
在D盤下保存一個名字為『中文.txt『的文件。運行如下測試代碼:
# -*- coding: utf-8 -*-
f=open('D:\\中文.txt', 'r')
print f.read()
運行結果如下:
IOError: [Errno 2] No such file or directory: 'D:\\\xe4\xb8\xad\xe6\x96\x87.txt'
字元串有很多的編碼,不同的系統和平台有各自的編碼 ,為了實現系統或平台之間的信息交互可能需要編碼轉換。這里只需要先使用UNICODE編碼一下,這樣再讀取中文路徑就不會有問題了:
復制代碼
# -*- coding: utf-8 -*-
path='D:\\中文.txt'
spath=unicode(path , "utf8")
f=open(spath,'r')
print f.read()
復制代碼
然後就可以正確顯示文件內容
總結:
所有的中文顯示問題都可以歸結為編碼問題,遇到其他類似的問題,那隻能仔細看文檔,靠你的經驗,靠你多做測試。而且根據python所報出來的錯誤一般也可以判斷出來。那麼當發現需要編碼轉換時,剩下的就是如何正確進行碼制轉換。
為了正確處理多語言文本,Python在2.0版後引入了Unicode字元串。從那時起,Python語言中的字元串就分為兩種:一種是2.0版之前就已經使用很久的傳統Python字元串,一種則是新的Unicode字元串。在Python語言中,一般的解決辦法是使用unicode()內建函數對一個傳統Python字元串進行「解碼」,得到一個Unicode字元串,然後又通過Unicode字元串的encode()方法對這個Unicode字元串進行「編碼」,將其「編碼」成為傳統Python字元串。
❹ notepad++ python 源代碼中含有中文 utf8無bom編碼 無法編譯
print
u'哈哈'
---------------------------------
Python
2
裡面默認所有字面上的字游迅符串缺沖都用ASCII編碼,可以通過在字元串前面加一個『u』前綴的方式聲明Unicode字元串,這個『u』前綴告訴Python後面的字元串要編成Unicode字元串
-------------------------------------------------------------------------------------------------------------。
print
函數嚴重受IDE編碼環境的影響,本來
print
u'哈哈'肯定能成功,因為u'哈哈'是unicode,
但是受ide的影響,
print
強行把u'哈哈'
轉伏磨殲換成了
'哈哈'
(字元類型),然後失敗了
---------------------------------------------------------------------------------------------
所以建議不要用notepad++這個ide
❺ python能用中文編寫程序嗎
python支持中陪姿穗文編碼
如果蘆卜是python3.x,只用將源文件編碼改成utf8就可以了,
如果是python2.x需要將源文件編碼改成utf8,同時在文件之前聲明編碼格式,像這樣:
# coding:utf-8
然後冊判在中文前面加u,如u"你好"
❻ python3.9.0怎樣改成中文
Python現在只有英文的,所以微機老師才會說:「學編程補英語」嘛。是吧?
(6)python編譯不了中文擴展閱讀:
Python由荷蘭數學和計算機科學研究學會的Guido van Rossum於1990 年代初設計,作為一門叫做ABC語言的替代品,Python提供了高效的高級數據結構,還能簡單有效地面向對象編程。Python語法和動態類型,以及解釋型語言的本質,使它成為多數平台上寫腳本和快速開發應用的編程語言, 隨著版本的不斷更新和語言新功能的添加,逐漸被用於獨立的、大型項目的開發。
Python解釋器易於擴展,可以使用C或C++(或者其他可以通過C調用的語言)擴展新的功能和數據類型。Python 也可用於可定製化軟體中的擴展程序語言。Python豐富的標准庫,提供了適用於各個主要系統平台的源碼或機器碼。
❼ 請問,python打開中文字元文件,但顯示不出中文怎麼辦
一般是編碼格式的問題,python內部默認的編碼格式是utf-8,常見的文本編碼格式是utf-8,gbk。編碼格式不不一致就會亂碼。可以在代碼前面申明編碼格式。
❽ python中文亂碼是怎麼一回事
python報錯invalid character in identifier,意思就是「標識符中的無效字元」,檢查下有沒有字元是中文的,把中文字元改成英文字元再運行就可以了。
Python的作者有意的設計限制性很強的語法,使得不好的編程習慣(例如if語句的下一行不向右縮進)都不能通過編譯。其中很重要的一項就是Python的縮進規則。
一個和其他大多數語言(如C)的區別就是,一個模塊的界限,完全是由每行的首字元在這一行的位置來決定的(而C語言是用一對花括弧{}來明確的定出模塊的邊界的,與字元的位置毫無關系)。這一點曾經引起過爭議。
因為自從C這類的語言誕生後,語言的語法含義與字元的排列方式分離開來,曾經被認為是一種程序語言的進步。不過不可否認的是,通過強制程序員們縮進(包括if,for和函數定義等所有需要使用模塊的地方),Python確實使得程序更加清晰和美觀。
(8)python編譯不了中文擴展閱讀
Python 中文編碼:
Python中默認的編碼格式是 ASCII 格式,在沒修改編碼格式時無法正確列印漢字,所以在讀取中文時會報錯。
解決方法為只要在文件開頭加入# -*- coding: UTF-8 -*-或者# coding=utf-8就行了
注意:# coding=utf-8的=號兩邊不要空格。
實例:
(Python 2.0+)
#!/usr/bin/python
# -*- coding: UTF-8 -*-
print( "你好,世界" )
輸出結果為:
你好,世界
❾ python3不能使用中文怎麼辦
Python3對中文的支持非常全面。在Python中,源文件默認使用的是UTF-8編碼,這樣一來,不單可方便地在源代碼的字元串中使用中
文,而且變數名也可以使用中文。
2、在Python3中不需要來回的編碼和解碼,直接使用print函數即可輸出變數的內容
3、在Python3中,字元串對象沒有decode和encode方法。
推薦學習《python教程》。
❿ sublime text 3 寫python代碼不能有中文怎麼解決
1.在。py文件頭加上
#-*-coding:utf-8-*-
2.把.py文件編碼改成utf-8,可以通過打開文件,另存為的時候選擇編碼
3.在有斗早敬中文的地方空慎加上u,例如printu'中文睜啟'