ord()函數也是Python中的內建函數之一,其作用是對傳入的單個Unicode字符,返回其對應的Unicode編碼碼點。
如果Unicode字符集中未定義該字符,將引發TypeError錯誤。
該函數可以視為chr()函數的反向操作,即ord()函數把字符轉換成對應的Unicode碼點對應的整數值,而chr()函數是把整型數轉換成其對應的Unicode字符。
ord(c)
該函數有一個參數c,是長度為1的字符,且必須有一個字符。
該函數的返回值是該字符對應的ASCII碼或Unicode碼的十進制形式。
print(ord('a'))
print(ord('¥'))
print(ord('€'))
print(ord('愛'))
print(ord('。'))
print(ord('1'))
print(ord('㈥'))
輸出結果如下:
97
165
8364
29233
12290
49
12837
在Python 3.8.2中的源代碼及執行結果如下:
ord()函數可以把16進制轉換為十進制。
#ord()函數的其他用處
print(hex(120)) #輸出'/x78'
print(ord('/x78')) #輸出120
這種用法相當于int函數的功能。
主要包括傳遞的參數多于1個字符、不包含任何字符或字符不在Unicode編碼集合中。
print(ord('中國'))
print(ord(''))
以上兩個例子分別演示了傳遞的參數多于1個字符以及傳遞空字符(兩個引號中間不包含任何字符)。
分別執行上面兩個例子時,第1個給出的錯誤類型信息為:
TypeError: ord() expected a character, but string of length 2 found.
第2個例子給出的錯誤類型信息為:
TypeError: ord() expected a character, but string of length 0 found
以上是關于Python ord()函數使用情況的介紹。如有問題請留言。
新聞熱點
疑難解答