1. 程式人生 > >python中字母與ascii碼的相互轉換

python中字母與ascii碼的相互轉換

需要 編碼 方法 由於 nic 否則 python int bsp

在做python編程時,碰到了需要將字母轉換成ascii碼的,原本以為用Int()就可以直接將字符串轉換成整形了,可是int()帶了一個默認參數,base=10,這裏表示的是十進制,若出現字母,則會報錯,認為超出該進制的表示範圍。

通過查閱網絡和python的幫助文檔,明確了幾個函數的使用,記錄如下:

ord(c):參數是長度為1的字符串,簡稱字符。當參數為統一對象時(unicode object),返回能代表該字符的統一編碼,當參數為8比特的字符串時,返回該字節的值。例如,ord(‘a‘)返回整形數值97,ord(u‘\u2020‘)返回8224。

chr(i):返回一個字符,字符的ascii碼等於參數中的整形數值。例如chr(97)返回字符‘a‘,該方法是ord()的反方法。參數必須是0-255的整形數值,否則會拋出valueError錯誤。

在應用函數時,觀察到有個python函數比較高效,map(function,iterable,...)將函數應用於每一項iterable,並且返回一個結果的列表。map()是 Python 內置的高階函數,它接收一個函數 f 和一個 list,並通過把函數 f 依次作用在 list 的每個元素上,得到一個新的 list 並返回。

註意:map()函數不改變原有的 list,而是返回一個新的 list。

利用map()函數,可以把一個 list 轉換為另一個 list,只需要傳入轉換函數。

由於list包含的元素可以是任何類型,因此,map() 不僅僅可以處理只包含數值的 list,事實上它可以處理包含任意類型的 list,只要傳入的函數f可以處理這種數據類型。

python中字母與ascii碼的相互轉換