08 : 言語処理100本ノックでPythonのお勉強

第一章 : 08 暗号文

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

プログラムはこんな感じになりました。

# ord()関数はアスキーコードを取得します。
# chr()関数はアスキーコードを文字に変換します。

def cipher(t):
    result = ''
    for c in t:
        if c.islower():
            result += chr(219 - ord(c))
        else:
            result += c
    return result

t = "helloworld"

# 暗号化
coded = cipher(t)
print('暗号化:' + coded)

# 復号化
decoded = cipher(coded)
print('復号化:' + decoded)