全角英数を半角にする方法
translate関数を使う
translate関数を用いて文字列を変更することができる。
def zenkaku_to_hankaku(s: str) -> str: return s.translate(str.maketrans("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz", "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz")) def hankaku_to_zenkaku(s: str) -> str: return s.translate(str.maketrans("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz", "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz")) target_str = "19歳以下 20~24 25~29 30~34 35~39 40~44 45~49 50~54 55~59 60~64 65~69 70歳以上" target_str = "19歳以下 20~24 25~29 30~34 35~39 40~44 45~49 50~54 55~59 60~64 65~69 70歳以上" print(zenkaku_to_hankaku(target_str)) # => "19歳以下" print(hankaku_to_zenkaku(target_str)) # => "19歳以下"