問. 与えられた文字列の各文字を,以下の仕様で変換する関数cipherを実装せよ.
英小文字ならば(219 - 文字コード)の文字に置換
その他の文字はそのまま出力
この関数を用い,英語のメッセージを暗号化・復号化せよ
解答例
#暗号文cipherの定義
def cipher(str):
rep = [chr(219 - ord(x)) if x.islower() else x for x in str]
return ''.join(rep)
#message(元の文)の定義
message = 'the quick brown fox jumps over the lazy dog'
#message(暗号化したもの)の定義
message = cipher(message)
#暗号化した文の表示
print('暗号化:', message)
#message(復号化したもの)の定義
message = cipher(message)
#複合化した文の定義
print('復号化:', message)
出力
暗号化: gsv jfrxp yildm ulc qfnkh levi gsv ozab wlt
復号化: the quick brown fox jumps over the lazy dog
参考リンク
0 件のコメント:
コメントを投稿