我如何将chr转换为ord? - Python

时间:2015-12-05 14:37:56

标签: python chr ord

在我的python程序中,我生成一个数字列表,如下所示:

gen1=(random.sample(range(33,126), 8))
            conv=(gen1[0:])

然后该列表将转换为chr,如下所示:

chr="".join([chr(i) for i in conv])

例如,打印结果如下所示:

`&+hs,DY

现在我的问题是,我如何将其转换回以后在我的程序中'conv'的方式,用户输入生成的密钥,我的程序需要对其进行反向工程以计算某些东西,我试过这个:

InPut=input("Please enter the key you used to encrypt the above text: ")
        ord_key="".join([ord for d in InPut])

但如果之前生成的密钥中有数字,则无效 请帮帮我

1 个答案:

答案 0 :(得分:0)

你没有正确地调用ord,这应该是:

InPut=input("Please enter the key you used to encrypt the above text: ")
ord_key="".join(map(str,[ord(d) for d in InPut]))

如果你想将'&+hs,DY仅仅map chr反转给它:

reversed = map(chr, "`&+hs,DY")

如果您使用python 3.x将其转换为列表:

reversed = list(map(chr, "`&+hs,DY"))