Python 采用密钥';01234&x27;并按照索引(数字)的顺序替换它们

Python 采用密钥';01234&x27;并按照索引(数字)的顺序替换它们,python,python-3.x,Python,Python 3.x,我不知道如何让“key”和“num”一起工作以得到最终答案。 我正在考虑使用.replace[],但坦率地说,我不太懂这种语言来编写这种类型的代码 例如: encrypt('3924056871', '445566') 应返回'005566' def encrypt(key, num): lst=[] for i in key: for i in num: 这里有两种方法 1:使用内置的translate和maketrans: from string import m

我不知道如何让“key”和“num”一起工作以得到最终答案。 我正在考虑使用.replace[],但坦率地说,我不太懂这种语言来编写这种类型的代码

例如:

encrypt('3924056871', '445566')
应返回
'005566'

def encrypt(key, num):
   lst=[]
   for i in key:
     for i in num: 
这里有两种方法

1:使用内置的
translate
maketrans

from string import maketrans
def encrypt1(key, numstr):
    trans = maketrans('0123456789', key)
    return numstr.translate(trans)
2:手动:

def encrypt2(key, numstr):
    res = ""
    for ch in numstr:
        res += key[ord(ch) - ord('0')]
    return res

假设
有10个字符,纯文本只有数字

def enc(key, plain_text):
    """
    >>> enc('3921056784', '445566')
    '005566'
    """
    return ''.join([key[int(x)] for x in plain_text])
这是家庭作业吗?(如果它是可以接受的,它只是改变了人们可以给你的答案)。