将读取文件中的字符与字典键进行比较,并在 Python 中打印相应的值 3.7.X

Compare character in read file with dictionary key and print the corresponding value in Python 3.7.X

假设我有一个这样的字典,它在列表中有一个 ASCII 值和一个对应的位串:

{32: ['111'], 101: ['000'], 97: ['1010']...

我有一个包含文本的文件,我如何将文本中的每个字符(转换为 ASCII)与字典中的键进行比较,如果匹配,则打印位串?

所有位串将像这样放在一起:1110001010...

到目前为止我有这个,但它只打印第一个字符:

for ch in text:
    for key, value in result.items():
        if ord(ch) == key:
            output = str.join("", value)
        else:
            continue

print(output)

其中结果是上面的字典。

您需要在循环外保留 output 变量,并添加到它而不是重新分配它:

output = ""
...
            output += str.join("", value)

此外,如果您知道 value 只是一项,那么您可以这样做:

output += value[0]