Python転職初心者向けエンジニアリングブログ

Pythonに魅了されたあなたへ。エンジニアリングの扉を開く転職初心者向けのブログへようこそ。このブログでは、Pythonの奥深さに迫りながら、エンジニアリングへの転職に役立つ情報を提供しています。未経験者から始めるPythonエンジニアリングの世界への一歩を踏み出すためのガイダンス、ベストプラクティス、そして成功事例など、初心者の方でもわかりやすいコンテンツをお届けします。

Pythonの`chr()`と`ord()`関数: 文字とUnicodeの変換

LYPプレミアム会員 python

Pythonのchr()ord()関数: 文字とUnicodeの変換

Pythonには文字列とUnicode文字の相互変換を行うためのchr()ord()という2つの関数があります。これらの関数を使うことで、文字列とUnicodeコードポイントの変換が容易に行えます。この記事では、chr()ord()関数について詳しく解説し、実際のコード例を交えながらその使い方を説明します。

chr()関数の基本的な使い方

chr()関数はUnicodeコードポイントを受け取り、それに対応する文字を返します。以下は基本的な使い方の例です。

# Unicodeコードポイントから文字への変換
char_result = chr(65)  # Unicodeコードポイント65は文字Aに対応
print(char_result)     # 出力: A

この例では、Unicodeコードポイントが65に対応する文字がAであるため、chr(65)の結果としてAが返されます。

ord()関数の基本的な使い方

ord()関数は文字を受け取り、それに対応するUnicodeコードポイントを返します。以下は基本的な使い方の例です。

# 文字からUnicodeコードポイントへの変換
ord_result = ord('A')  # 文字Aに対応するUnicodeコードポイントを取得
print(ord_result)     # 出力: 65

この例では、文字Aに対応するUnicodeコードポイントが65であるため、ord('A')の結果として65が返されます。

Unicodeコードポイント範囲の指定

chr()関数やord()関数は単一のUnicodeコードポイントだけでなく、範囲を指定して複数の変換も行えます。以下は範囲指定の例です。

# Unicodeコードポイントの範囲から文字列への変換
char_range_result = ''.join(chr(i) for i in range(65, 91))  # Unicodeコードポイント65から90までの文字列
print(char_range_result)                                     # 出力: ABCDEFGHIJKLMNOPQRSTUVWXYZ

# 文字列からUnicodeコードポイントの範囲への変換
ord_range_result = [ord(char) for char in 'ABCDEFGHIJKLMNOPQRSTUVWXYZ']
print(ord_range_result)  # 出力: [65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90]

この例では、chr()関数を使用してUnicodeコードポイント65から90までの文字列を生成し、ord()関数を使用してその逆の操作を行っています。

Unicodeエスケープの利用

chr()関数を使用するとUnicodeエスケープを利用して直接特定の文字を生成することもできます。

unicode_escape_result = '\u0041'  # Unicodeエスケープを使用して文字Aを生成
print(unicode_escape_result)      # 出力: A

この例では、Unicodeエスケープ \u0041 を使用して文字Aを生成しています。

Unicodeコードポイントの取得

文字列内の各文字に対してUnicodeコードポイントを取得する方法もあります。

string_to_ord_list = [ord(char) for char in "Hello, World!"]
print(string_to_ord_list)  # 出力: [72, 101, 108, 108, 111, 44, 32, 87, 111, 114, 108, 100, 33]

この例では、文字列"Hello, World!"内

の各文字に対してord()関数を適用し、Unicodeコードポイントのリストを得ています。

まとめ

この記事では、Pythonのchr()ord()関数について詳しく解説しました。これらの関数を使うことで、Unicodeコードポイントと文字の変換が簡単に行えます。Unicodeエスケープや範囲指定を駆使して、様々な文字に対する処理を効率的に行うことができます。是非、自分のプロジェクトやコードで活用してみてください。