前提・実現したいこと
python3.x で rot13 の実装をしたい
前に3文字アルファベットをずらすプログラムを作成しました.
ですが、なぜか1文字新しい文字(F)が追加されました。
解決の手がかりすら掴めず困っています。
助けて下さい
発生している問題
# × ソースコードの実行結果(Fが入っている) cpaw{CFaesar_cipher_is_classical_cipher} # 〇 (出てきてほしい出力) cpaw{Caesar_cipher_is_classical_cipher}
実行したソースコード
python3.6.9
1def rot13(crypt,shift): 2 plain = '' 3 for c in crypt: 4 if 'A' <= c and c <= 'Z': 5 plain += chr((ord(c) - ord('A') + shift) % 26 + ord('A')) 6 if 'a' <= c and c <= 'z': 7 plain += chr((ord(c) - ord('a') + shift) % 26 + ord('a')) 8 else : 9 plain += c 10 return plain 11 12s = 'fsdz{Fdhvdu_flskhu_lv_fodvvlfdo_flskhu}' 13print(rot13(s,-3))
補足情報(FW/ツールのバージョンなど)
Python:3.6.9
回答1件
あなたの回答
tips
プレビュー