Python

【Python】文字コードを取得する方法を解説

この記事では、Pythonで文字コードを取得する方法を解説します。

パソコン内部で文字は「文字コード」と呼ばれる整数で表現されています。なぜ文字が表示できるかというと、出力する際にUnicodeを元に整数から文字という記号に変換しているからです。

それでは、「文字から文字コードを取得する方法」と「文字コードから文字を取得する方法」を見ていきましょう!

文字から文字コードを取得する

文字から文字コードを取得するには、ord()関数を使います。

ord(char)

char引数に文字を1文字だけ入力して使用します。

サンプル

試しに文字コードを出力してみます。

o1 = ord('a')
o2 = ord('あ')
o3 = ord('!')

print(o1)  # 97
print(o2)  # 12354
print(o3)  # 33

文字コード から文字を取得

文字コードから文字を取得するには、chr()関数を使います。

chr(i)

i引数には、整数を指定します。整数の有効範囲は、0~1114111です。範囲外の値が指定された場合は、ValueErrorが送出されます。

サンプル

試しに、先ほどのコードで取得した文字コードを文字に変換してみます。

c1 = chr(97)
c2 = chr(12354)
c3 = chr(33)

print(c1)  # a
print(c2)  # あ
print(c3)  # !

文字列の比較

文字は文字コードで比較されます。

c1 = 'a'
c2 = 'b'

print(f'{c1}({ord(c1)}) < {c2}({ord(c2)})')
print(c1 < c2)

実行結果

a(97) < b(98)
True

文字列の場合は、最初に1文字目が比較され、1文字目が同じ場合、2文字目、3文字目と順番に比較されます。

s1 = 'abc'
s2 = 'abd'

print(s1 < s2)

実行結果

True