chr【Unicode コードポイント ⇒ 文字】
ord【文字 ⇒ Unicode コードポイント】
bin【2 進文字列変換】
oct【8 進文字列変換】
hex【16 進文字列変換】
ascii【印字可能文字列変換 (エスケープ)】
repr【印字可能文字列変換】
chr【Unicode コードポイント ⇒ 文字】
ord【文字 ⇒ Unicode コードポイント】
メモ
- Unicode コードポイント と 文字 を相互変換
関数 備考 chr【Unicode コードポイント ⇒ 文字】 例外発生あり ord【文字 ⇒ Unicode コードポイント】 例外発生あり - 関連
構文
chr(i)
戻り値1文字の文字列
iUnicode コードポイント (0 ~ 0x10FFFF)
例外ValueError (Unicode コードポイントが範囲外)
ord(c)
戻り値Unicode コードポイント
c1文字の文字列
例外TypeError (1文字でない)
例
lst1 = [
0x30, # 出力:0
0x41, # 出力:A
0x61, # 出力:a
0x3042, # 出力:あ
0x30A2, # 出力:ア
0x5B89, # 出力:安
0x963F, # 出力:阿
# 0x200000 # ValueError 例外
]
for i in lst1:
print(chr(i))
lst2 = [
'0', # 出力:0x30
'A', # 出力:0x41
'a', # 出力:0x61
'あ', # 出力:0x3042
'ア', # 出力:0x30a2
'安', # 出力:0x5b89
'阿', # 出力:0x963f
# '123' # 出力:TypeError 例外
]
for c in lst2:
i = ord(c)
print(hex(i))
bin【2 進文字列変換】
oct【8 進文字列変換】
hex【16 進文字列変換】
メモ
構文
bin(x)
oct(x)
hex(x)
戻り値プレフィックス付きの 2・8・16 進文字列
x整数値
例外TypeError (整数以外)
例
lst = [
0, # 出力:(0) (0b0) (0o0) (0x0)
0b11, # 出力:(3) (0b11) (0o3) (0x3)
0o77, # 出力:(63) (0b111111) (0o77) (0x3f)
0xFF, # 出力:(255) (0b11111111) (0o377) (0xff)
-7, # 出力:(-7) (-0b111) (-0o7) (-0x7)
# None, # TypeError 例外
# "123", # TypeError 例外
# 1.23 # TypeError 例外
]
for x in lst:
b = bin(x)
o = oct(x)
h = hex(x)
print("({}) ({}) ({}) ({})".format(x, b, o, h))
ascii【印字可能文字列変換 (エスケープ)】
repr【印字可能文字列変換】
メモ
- 印字可能文字列に変換
関数 備考 ascii【印字可能文字列変換 (エスケープ)】 ASCII 文字以外はエスケープ repr【印字可能文字列変換】 (参考) str【文字列型】 文字列に変換 - 関連
構文
ascii(object)
repr(object)
戻り値印字可能文字列
objectオブジェクト
例
from datetime import date
lst = [
123,
"文字列",
date(2001, 2, 3)
]
for obj in lst:
a = ascii(obj)
r = repr(obj)
s = str(obj)
print("({}) ({}) ({})".format(a, r, s))
# 出力:(123) (123) (123)
# 出力:('\u6587\u5b57\u5217') ('文字列') (文字列)
# 出力:(datetime.date(2001, 2, 3)) (datetime.date(2001, 2, 3)) (2001-02-03)