この記事では、Pythonを使用したUnicodeと文字列の相互変換について詳しく解説します。具体的なコード例、その詳細な解説、および応用例を含めています。
目次
Unicodeとは何か
Unicode(ユニコード)は、世界中のすべての文字をコンピュータ上で一貫して扱うための文字コードの一種です。これにより、多言語や特殊文字も容易に扱えるようになります。
PythonでのUnicodeと文字列の相互変換の基本
Pythonでは、Unicode文字列と通常の文字列(バイト列)とを相互に変換することが可能です。
文字列からUnicodeへの変換
Pythonで文字列からUnicodeへ変換する基本的な方法は`ord()`関数を使用することです。
# 文字列 "A" をUnicodeに変換
unicode_code = ord("A")
print(unicode_code) # 出力: 65
Unicodeから文字列への変換
逆に、Unicodeから文字列への変換は`chr()`関数を使用します。
# Unicode 65 を文字列に変換
char_str = chr(65)
print(char_str) # 出力: "A"
応用例
応用例1: 文字列の全ての文字をUnicodeに変換
文字列の各文字をUnicodeに変換する例です。
# 文字列の全ての文字をUnicodeに変換
def str_to_unicode(s):
return [ord(c) for c in s]
print(str_to_unicode("Hello")) # 出力: [72, 101, 108, 108, 111]
応用例2: Unicodeリストを文字列に変換
Unicodeのリストを文字列に変換する例です。
# Unicodeのリストを文字列に変換
def unicode_to_str(unicode_list):
return ''.join(chr(u) for u in unicode_list)
print(unicode_to_str([72, 101, 108, 108, 111])) # 出力: "Hello"
応用例3: 文字列の逆順変換
文字列をUnicodeに変換し、その後逆順にしてから再度文字列に変換する例です。
# 文字列をUnicodeに変換して逆順にし、再度文字列にする
def reverse_str(s):
unicode_list = [ord(c) for c in s]
reversed_list = unicode_list[::-1]
return ''.join(chr(u) for u in reversed_list)
print(reverse_str("Hello")) # 出力: "olleH"
まとめ
Pythonを使用したUnicodeと文字列の相互変換にはいくつかの方法がありますが、基本的には`ord()`と`chr()`関数を使います。具体的な応用例を通じて、この変換がいかに簡単かつ有用かがわかるでしょう。
コメント