Python 如何用相应的数字替换字母
我的问题是:如果我有一个像“lake”这样的字符串,我想用一组像“1,2,3,4”这样的数字来代替它,我怎么能做到呢?Python 如何用相应的数字替换字母,python,python-2.7,Python,Python 2.7,我的问题是:如果我有一个像“lake”这样的字符串,我想用一组像“1,2,3,4”这样的数字来代替它,我怎么能做到呢? 为了更清楚,我希望每个字母都有一个对应的数字。希望我清楚。提前谢谢。您的问题有点笼统,但让我给您展示一个小示例,您可以将输入转换为“某物”,并从“某物”恢复源字符串: 没有一般的规则可以回答你的问题,我希望每个字母都有一个对应的数字,为了简单起见,只需使用相关函数转换/取消转换字符串,就可以了 当然,我建议你不要坚持我的这个简单答案,不要在大量专业书籍中阅读这个话题:) 希望能
为了更清楚,我希望每个字母都有一个对应的数字。希望我清楚。提前谢谢。您的问题有点笼统,但让我给您展示一个小示例,您可以将输入转换为“某物”,并从“某物”恢复源字符串: 没有一般的规则可以回答你的
问题,我希望每个字母都有一个对应的数字
,为了简单起见,只需使用相关函数转换/取消转换字符串,就可以了
当然,我建议你不要坚持我的这个简单答案,不要在大量专业书籍中阅读这个话题:)
希望能有所帮助。有很多方法:枚举、字典、双数组等。这取决于你想怎么做。不,你不清楚。为什么“lake”对应“1,2,3,4”"?您需要对此进行解释,并且您应该向我们展示您自己为此编写代码的尝试。您是否试图询问字符串中每个新字母都从1开始分配一个字母的算法?因此
abac
->1213
或abccb
->12332
…使用lake
是一个非常糟糕的例子如果这就是你想要实现的目标。@MercuriusAltar不客气,在SO中感谢某人的最好方式就是接受问题或投票表决;)
alphabet = "abcdefghijklmnopqrstuvwxyz0123456789 .,?!"
def crypt(c, key):
return ord(c)-key
def decrypt(c, key):
return chr(c+key)
my_string = "lake"
key = 97
dst = [crypt(c,key) for c in my_string]
src = [decrypt(c,key) for c in dst]
print dst
print ''.join(src)