如何在python中执行简单的替换加密?

时间:2017-11-09 13:22:12

标签: python encryption

很抱歉,如果这是一个非常简单的问题,但我对python很陌生,而且我甚至对从哪里开始这个问题感到困惑。

我需要做的是替换句子中的至少5个字母以产生新的加密句子,"Hello my name is TGMezza"可以使用('H':'1', 'e':'2', 'l':'3', 'o':'4', 'm':'5')加密,因此它将改为"12334 5y n15e is TGM2zza"。我知道这可能是一个非常简单的问题但是我尽可能多地理解如何做到这一点,因为我是这样的新手以及我能找到的所有新手。搜索是一种更为复杂的加密形式,如凯撒密码。

2 个答案:

答案 0 :(得分:2)

replacements = { 'H':'1', 'e':'2', 'l':'3', 'o':'4', 'm':'5' }
s = "Hello my name is TGMezza"
for key in replacements:
    s = s.replace(key,replacements[key])
print(s)

或者

replacements = { 'H':'1', 'e':'2', 'l':'3', 'o':'4', 'm':'5' }
s = "Hello my name is TGMezza"
s = ''.join(replacements[x] if x in replacements else x for x in s)

答案 1 :(得分:1)

您可以使用str.translate方法将每个字符翻译成另一个字符:

translation = str.maketrans("Hello", "12345") # Creates the table to convert "H" to "1" etc.
# or:
tranlation = str.maketrans({'H':'1', 'e':'2', 'l':'3', 'o':'4', 'm':'5'})

text = "Hello my name is TGMezza"
print(text.translate(translation))