辞書を使用してランダムな文字列をエンコードして遊んできました。私が望む文字を置き換えるコードを手に入れましたが、実際には文字列の文字を一度置き換えるだけで、文字を複数回置き換えることがあります。私は、関数を使用テスト目的のために文字列のエンコーダ - Python
def encode(msg,code):
for i in msg:
for i in code:
msg = msg.replace(i, code[i])
return msg
呼び出し:これは私が持っているものである 初期:
encode("blagh", {"a":"e","h":"r"})
と、より複雑な文字列:二番目の右のため
encode("once upon a time",{'a':'ae','e':'ei','i':'io','o':'ou','u':'ua'})
上記の出力を探しています: 'ouncei uapoun ae tiomei'
代わりにして自分自身を発見しています:
「ounceio uapoun aeio tiomeio」
どのように私は一度だけ、各文字を置き換えるには、私のループを制限することができますか?
http://stackoverflow.com/questions/21038891/what-does-table-the-string- translate-function-平均 –