がrot13
エンコードされた文字列をデコードするには、単にrot13(s)
を計算する、すなわち、再び文字列のrot13
を取り、s
を言います。
rot13
をpythonで計算する方法がわからない場合は、少しグーグルで試してみてください。私は完全を期すため、ここでのコードを記述します
[string.maketrans
がのpython3から削除されたためのpython3それだけpython2上で動作することに注意していない。] https://stackoverflow.com/a/3269756/3293087::私はかなりうまく機能するソリューションをGoogleで検索し、見つかった
# Python 2 solution
import string
rot13Table = string.maketrans(
"ABCDEFGHIJKLMabcdefghijklmNOPQRSTUVWXYZnopqrstuvwxyz",
"NOPQRSTUVWXYZnopqrstuvwxyzABCDEFGHIJKLMabcdefghijklm")
rot13 = lambda s : string.translate(s, rot13Table)
print rot13("Hello World!")
# Outputs "Uryyb Jbeyq!"
ノート:私はOPの元々投稿した内容に対応するデコードされた文字列を書くつもりはない。かなり攻撃的でホモフォビックだからだ。興味のある人は誰でも自分でそれをやることができます。
更新:私もthis SO answerからのpython 2 & 3の両方のために働く解決策を見つけました。これは、組み込みrot13
エンコーダがcodecs
モジュールにpythonであり判明:
# Python 2 & 3 compatible
import codecs
rot13 = lambda s : codecs.getencoder("rot-13")(s)[0]
# Answer
rot13("Gur dhvpx oebja sbk whzcrq bire gur ynml qbt")
がアップデート2:OPは答えを知って断固あるとPythonがインストールされていないようですので、私が作成しましたJSソリューションhttps://codepen.io/anon/pen/zPYVQP。その他は慎重に行ってください。
これは完全に不可能です。これを行う方法がないという事実も、あなた自身ではできないことを意味しています:): –
は私が@WillemVanOnsemを試したことに疑問を持っています – user8852303
いいえ、私はrot13エンコードされた文字列をデコードする必要があります@ KlausD。 – user8852303