所以我试图在没有使用模块的情况下制作一个临时编码器/解码器,而且我的方法适用于单数字母而不是单词。我已经设置了代码,因此它使用您选择的密钥对单词的每个字母进行编码。
我想知道的是如何逐个解码编码数字列表然后重建单词。这将是惊人的,非常有用的谢谢。 附:我是Python的初学者,这是我的第二天,所以我尝试了我所知道的一切,请不要使用任何模块。
while True :
option = input('Encode or Decode? : ')
if option == 'encode':
start = input('What word do you want to be encoded?: ')
word = start
key = int(input('What key would you like to use?: '))
z=[]
for i in word:
encoder = ord(i)*key+key/key
z.append(encoder)
print(z)
else:
start = float(input('What encoded string do you want to be decoded?: '))
key = int(input('What key would you like to use?: '))
decoder = start/key
print(chr(round(decoder)))
答案 0 :(得分:0)
你可以做的解码是在我为你调整的代码中输入数字序列:
else:
x = []
start = (input('What encoded nubmers do you want to be decoded?: '))
split_list = start.split()
key = int(input('What key would you like to use?: '))
for i in split_list:
integer = int(i)
decoder = int(integer/key)
letter = chr(decoder)
x.append(letter)
print("".join(x))
start.split()
将代码拆分为单独的字符串,并将它们放入列表split_list
中。然后代码检查split_list
中的每个数字并解码数字,然后将其转换回字符。然后打印字符的连接结果。
例如,如果我使用密钥apple
对5
进行编码,则运行解码器并使用密钥486 561 561 541 506
键入5
,它会成功返回apple
。< / p>
这甚至适用于多个单词,因为我尝试编码hello world
然后解码它并且它成功了。我希望这有帮助! :)