Python PR

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

記事内に商品プロモーションを含む場合があります

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

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

つまりは整数から文字を生成したり、文字から整数を取得することができます。

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

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

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

ord(char)
  • char引数に渡された文字の文字コードを返す関数
  • char引数に指定できる文字は1文字です。2文字以上を指定するとTypeErrorが発生する

例として適当な文字の文字コードを出力してみます:

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

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

文字から文字コードを取得することができました。

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

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

chr(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