我有一段代码,它使用字典翻译一个字符串(以列表形式开始)。我想让代码翻译字符串,然后将其反译回原始
这是我目前掌握的代码:
words = ['Abra', ' ', 'cadabra', '!']
clues = {'A':'Z', 'a':'z', 'b':'y', 'c':'x'}
def converter(words, clues):
words = ''.join(words)
for item in words:
if item in clues.keys():
words = words.replace(item, clues[item])
return words
def reversal(clues):
clues = {v: k for k, v in clues.items()}
print(clues)
x = converter(words, clues)
print(x)
reversal(clues)
x = converter(words, clues)
print(x)
只有,这会打印出来 “Zyrz xzdzyrz!” “Zyrz xdzyrz!” 我不知道为什么不打印: “Zyrz xzdzyrz!” “阿布拉·卡达布拉!”
我的代码中是否有错误导致它这样做?我检查了线索,它通过函数后被正确反转。我做错什么了
看起来您正在尝试在函数中就地执行字典操作。您的函数需要返回字典的反向版本,然后需要在main中获取该版本:
Python已经在所有字符串上使用了
translate
方法,只要调用它就行了用法:
相关问题 更多 >
编程相关推荐