python編碼的問題,遇到python編碼錯誤要怎麼解決

時間 2022-02-08 05:20:03

1樓:匿名使用者

你好:編碼的問題確實頭疼;

我在部落格園摘抄了一些編碼問題;

這個問題主要是因為:

print 是將字串轉化為系統的編碼輸出。

而list儲存的你設定的編碼。

2樓:老夭來了

python2預設編碼是ascii,如果你在檔案頂部新增# -*- coding: utf-8 -*-,會轉成utf8,

通過字串前面新增u,如u「中國」,可以轉成unicode.

python3預設unicode

3樓:匿名使用者

ot = os.listdir("f:")

print ot

測試了下上面這兩條語句,中文命名的資料夾列表顯示如下:

['\xd2\xf4\xc0\xd6', '\xcd\xbc\xc6\xac']

這不叫亂碼,只是以utf-8編碼表示中文字串。你的本意是想要得到['abc', 'bcd', '**', '**']這種形式的輸出,但是實際顯示卻是utf-8編碼。

假設我們建立乙個列表 ot = ['abc', 'bcd', '**', '**'],並且檔案開頭定義了以utf-8格式進行編碼。那麼在記憶體裡列表物件ot儲存的是'abc', 'bcd', '\xd2\xf4\xc0\xd6', '\xcd\xbc\xc6\xac'這四個值。

為什麼英文本元還是英文,中文字元就變成「亂碼」了呢?因為計算機不是人,它是看不懂'**'和'**'這幾個漢字字元的,它只認識字元的編碼值。對於多種編碼來說,鍵盤上那些英文本元編碼值都是一樣的。

中文則不一樣。

為什麼列印字串顯示出了中文,列印列表的時候顯示的卻是utf-8編碼?print 的作用是把計算機可理解的物件以人類可以理解的方式列印出來,具體顯示結果跟你要列印的物件有關,列印的是字串,顯示的就是人類語言表示的字串物件,列印的是列表,顯示的就是列表物件本身,也即該列表裡儲存的值。

print ot 表示列印乙個列表物件ot,列印的是列表本身,所以它裡面的項以什麼形式儲存的就以

什麼形式顯示。

遇到python編碼錯誤要怎麼解決

4樓:匿名使用者

在將字元bai串寫入檔案時,du執行f.write(str),後台總是報錯:unicodeencodeerror:

'ascii' codec can't encode character u'\u6211' in position 0: ordinal not in range(128),即zhiascii碼無法被轉換成daounicode碼。

剛開始我以為

內python預設的編碼是utf-8,所以使容用decode方法和encode方法來進行編碼轉換,後來怎麼也不成功,於是懷疑是否預設編碼不是utf-8。

使用下面語句獲取python當前的預設編碼:

[python] view plain copyimport sys

print sys.getdefaultencoding()

如何解決python的編碼問題

5樓:匿名使用者

gb2312是中國規定的漢字編碼,也可以說是簡體中文的字符集編碼

gbk 是 gb2312的擴充套件 ,除了相容gb2312外,它還能顯示正體中文,還有日文的假名

cp936:中文本地系統是windows中的cmd,預設codepage是cp936,cp936就是指系統裡第936號編碼格式,即gb2312的編碼。

怎麼解決python3亂碼問題

win7裝了python右鍵點py的檔案沒有idle編輯的選項

辦法1 一定要用超級使用者安裝。通常會有。你可以去掉後,重新安裝一次。辦法2 直接把python目錄裡的idle.py拖到你的桌面上辦法3 安裝sublime text2代替idle辦法4 手工修改登錄檔。我以前似乎做過這樣的嘗試。忘記怎麼做了。可以搜尋一下。py檔案執行中的登錄檔配置。還是辦法1簡...

python3 6的py檔案可以直接生成exe檔案嗎

pyinstaller目前不支援python3.6,目前最高支援到python3.5.建議用py2exe試一下,沒有試驗過,不知道行不行。 可以,先安裝pyinstaller 然後就可以打包成exe檔案 需要安裝 模組,我用的是 pyinstaller,直接生成一個exe檔案。 use pyinst...

一般是如何自學python的,我想自學Python,多久才能學會?

中公教育it優就業 python的語法簡潔清晰,語法接近英語,python簡單的語法可以讓初學者專注于思考要做的事情,而不需要在過程上大費周章。開發環境簡單,能打字就能寫 適合新手入門學習。自學python首先確定方向,方向很重要,python開發也分很多方向的,運維 後臺開發 演算法工程師 資料分...