asciipython
❶ python有哪幾種編碼方式
第一種:ASCII碼。是基於拉丁字母的一套電腦編碼系統,主要用於顯示現代英語和其他西歐語言,它是現今最通用的單位元組編碼系統,並等同於國際標准IS/IEC
646。
由於計算機是美國人發明的,因此,最早只有127個字母被編碼到計算機李,也就是大小寫英文字母、數字和一些符號,這個編碼表被稱為ASCII編碼,比如大寫字母A的編碼是65,小寫字母a的編碼是97,後128個稱為擴展ASCII碼。
第二種:GBK和GB2312。能在計算機中顯示中文字元是至關重要的,然而ASCII表裡一個偏旁部首都沒有,所以我們需要一個關於中文和數字對應的關系表,一個位元組只能最多表示256個字元,用處理中文顯然一個位元組是不夠的,所以我們需要採用兩個位元組來表示,所以中國制定了GB2312編碼,用來將中文編寫進去。
第三種:Unicode。因為各個國家都有一套自己的編碼,所以無法避免沖突,因此Unicode誕生了。它可以把所有語言都統一到一套編碼里,這樣就不會存在亂碼問題了,現代操作系統和大多數編程語言都直接支持Unicode。
第四種:UFT-8。基於節約的原則,出現了把Unicode編碼轉化為可變長編碼的UTF-8編碼。而UTF-8編碼把一個Unicode字元根據不同的數字大小編碼成1-6個位元組,常用的英文字母被編碼成一個位元組,漢字通常是3個位元組,只有很生僻的字元才會被編碼成4-6個位元組,如果你要傳輸的文本包含大量英文字元,用UTF-8編碼就能節省空間。
❷ python中ascii碼排序的問題
s=input('請輸入3個字母:')
s=s.strip().split()
s.sort()
print('從小到大排序後是:')
print(' '.join(s))
❸ python123漢字的unicode編碼值
python的默認編碼是ascii,可以通過sys.setdefaultencoding('utf-8')函數設置python的默認編碼。
python中可以通過encode和decode的方式改變數據的編碼,比如:
>>> u'漢字'
u'\u6c49\u5b57'
>>> u'漢字'.encode('utf-8')
'\xe6\xb1\x89\xe5\xad\x97'
>>> u'漢字'.encode('utf-8').decode('utf-8')
u'\u6c49\u5b57'
我們可以通過這兩個函數設置編碼。
那麼,python中的str是什麼類型?
>>> import binascii
>>> '漢字'
'\xba\xba\xd7\xd6'
>>> type('漢字')
>>> print binascii.b2a_hex('漢字')
babad7d6
>>> print binascii.b2a_hex(u'漢字')
Traceback (most recent call last):
File "", line 1, in
UnicodeEncodeError: 'ascii' codec can't encode characters in
position 0-1: ordinal not in range(128)
>>> print binascii.b2a_hex(u'漢字'.encode('utf-8'))
e6b189e5ad97
>>> print binascii.b2a_hex(u'漢字'.encode('gbk'))
babad7d6
binascii是將數據的二進制轉換成ascii,上面的解釋是:『漢字'的類型是str,二進制是babad7d6,u『漢字'是無法轉換成ascii,這樣就報出了開頭的第一個錯誤。解決辦法就是把它.encode(『utf-8')成str類型。因為我命令行是windows默認的GBK編碼,所有u'漢字'.encode(『gbk')的時候,輸出結果和『漢字'結果一樣。
❹ python如何將ascii碼轉換為字母
可以使用內置的chr()函數:
chr() 用一個范圍在 range(256)內的(就是0~255)整數作參數,返回一個對應的字元。
比如chr(88) 會返回大寫字母:X
與chr()函數相對應的函數是ord()函數,使用ord('X') 會返回:88
❺ python 將英文字母轉成對應的ASCII數字
1、創建python文件,testascii.py;
❻ python ascii 編碼 怎麼轉化為utf-8編碼
實現代碼如下:
a = 'abce'
# print type(a)
b = a.decode("ascii")
# print type(b)
c = a.decode("ascii").encode("utf-8")
# print type(c)
在python中進行編碼轉換都是通過unicode作為中間值實現的。所以要先decode成unicode字元,然後再使用encode轉換成utf-8編碼的str。可以把注釋取消了,看下轉換過程中的類型。