0
ファイル内の文字を置き換える際に問題が発生しました。ファイル内の文字を置換するスクリプト
#!/usr/bin/env python
with open("crypto.txt","r") as arquivo:
data = arquivo.read()
for caracter in data:
if "a" in data:
data = data.replace("a","c")
elif "b" in data:
data = data.replace("b","d")
elif "c" in data:
data = data.replace("c","e")
elif "d" in data:
data = data.replace("d","f")
elif "e" in data:
data = data.replace("e","g")
elif "f" in data:
data = data.replace("f","h")
elif "g" in data:
data = data.replace("g","i")
elif "h" in data:
data = data.replace("h","j")
elif "i" in data:
data = data.replace("i","k")
elif "j" in data:
data = data.replace("j","l")
elif "k" in data:
data = data.replace("k","m")
elif "l" in data:
data = data.replace("l","n")
elif "m" in data:
data = data.replace("m","o")
elif "n" in data:
data = data.replace("n","p")
elif "o" in data:
data = data.replace("o","q")
elif "p" in data:
data = data.replace("p","r")
elif "q" in data:
data = data.replace("q","s")
elif "r" in data:
data = data.replace("r","t")
elif "s" in data:
data = data.replace("s","u")
elif "t" in data:
data = data.replace("t","v")
elif "u" in data:
data = data.replace("u","w")
elif "v" in data:
data = data.replace("v","x")
elif "w" in data:
data = data.replace("w","y")
elif "x" in data:
data = data.replace("x","z")
print data
このスクリプトは、cryptoという名前のtxtファイルを読み取り、上記の文に基づいて文字の置換を開始します。このファイルの中には、アロハという言葉が書かれています。
これは、私は私がそれを修正することができますどのようにスクリプト
clohc
elohe
glohg
ilohi
iloji
klojk
を実行するたび取得した結果でしょうか? tr
機能をperlの直接equlalであるPythonの string translate
import string
with open("crypto.txt","r") as arquivo:
data = arquivo.read()
out = data.translate(string.maketrans("abcdefghijklmnopqrstuvw","defghijklmnopqrstuvwxyz"))
print out
について何
[ask]と[mcve] – Julien
"文字の置き換え"が正確に定義されていません。正確な要件は何ですか?上記の例で期待される結果は何ですか? – kaylum
より一般的にシーザー暗号またはローテーション暗号と呼ばれるものを実装しようとしているようです –