言語処理100本ノック

08. 暗号文

与えられた文字列の各文字を,以下の仕様で変換する関数cipherを実装せよ. 英小文字ならば(219 - 文字コード)の文字に置換 その他の文字はそのまま出力 この関数を用い,英語のメッセージを暗号化・復号化せよ.

def cipher(sentence):
    result = []
    for s in sentence:
        if s.islower():
            result.append(chr(219-ord(s)))
        else:
            result.append(s)
    return "".join(result)


print(cipher("FunCtioB"))
print(cipher("Hello World"))
print(cipher("abcdefghijkelomnopqrstuvwxyz"))

<結果>
FfmCgrlB
Hvool Wliow
zyxwvutsrqpvolnmlkjihgfedcba