Python 我如何才能改变这一点,以使替代工作?

Python 我如何才能改变这一点,以使替代工作?,python,text,text-files,Python,Text,Text Files,线索文件包括两个字母,我希望用第二个字母代替文本文件中的第一个字母。它只打印文本文件3次,没有任何更改 这是线索文本文件中的内容: 公里 OQ 乙二醇 这就是文本文件中的内容: g fmnc wms bgblr rpylqjyrc gr zw fylb。rfyrq ufyr amknsrcpq ypc dmp。bmgle gr gl zw fylb gq glcddgagclr ylb rfyr’ufw rfgq rcvr gq qm jmle。sqgle qrpgle.kyicrpylq()g

线索文件包括两个字母,我希望用第二个字母代替文本文件中的第一个字母。它只打印文本文件3次,没有任何更改

这是线索文本文件中的内容:

公里

OQ

乙二醇

这就是文本文件中的内容:

g fmnc wms bgblr rpylqjyrc gr zw fylb。rfyrq ufyr amknsrcpq ypc dmp。bmgle gr gl zw fylb gq glcddgagclr ylb rfyr’ufw rfgq rcvr gq qm jmle。sqgle qrpgle.kyicrpylq()gq pcamkkclbcb。lmu ynnjw ml rfc spj

我的代码是:

import string
def convertWords():
    cluesDict = {}
    with open('Clues.txt') as c:
        
        f = open('Clues.txt', 'r')
        clues = f.readlines()
        f = open('Text.txt', 'r')
        text = f.read()
        for z in clues:
            text.maketrans(z[0], z[1])
            print(text)

您能告诉我如何更正吗?

您的代码中有两个问题。第一个是
maketrans
创建翻译,但不执行它。您应该将该代码更改为:

text.maketrans(z[0], z[1])
print(text.translate(trans))
第二个问题是线索是大写的,而文本是小写的。您可以通过在阅读时将线索改为小写来纠正这一点:

clues = [clue.lower() for clue in f.readlines()]
相反,如果您希望线索同时适用于小写和大写,您可以:

text.maketrans(z[0].lower() + z[0].higher(), z[1].lower() + z[1].higher())
print(text.translate(trans))