如何解码字母列表并重建Python中的原始单词?

时间:2016-04-01 05:00:18

标签: python-3.x

所以我试图在没有使用模块的情况下制作一个临时编码器/解码器,而且我的方法适用于单数字母而不是单词。我已经设置了代码,因此它使用您选择的密钥对单词的每个字母进行编码。

我想知道的是如何逐个解码编码数字列表然后重建单词。这将是惊人的,非常有用的谢谢。 附:我是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)))

1 个答案:

答案 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中的每个数字并解码数字,然后将其转换回字符。然后打印字符的连接结果。

例如,如果我使用密钥apple5进行编码,则运行解码器并使用密钥486 561 561 541 506键入5,它会成功返回apple。< / p>

这甚至适用于多个单词,因为我尝试编码hello world然后解码它并且它成功了。我希望这有帮助! :)