【问题标题】:how to match items between 2 different lists如何匹配2个不同列表之间的项目
【发布时间】:2016-09-03 18:20:35
【问题描述】:

我有 2 个不同的列表:

['2', '1']
['equals', 'x']

我想匹配项目,所以 2 = "equals" 和 1 = "x" 以重新创建原始句子 "x equals x",我还有第三个列表是:

['1', '2', '1']

我需要第三个列表来重新创建原始句子,因为它具有所有位置,为此我想使数字等于诸如 1 = "x" 之类的单词并打印数字列表以便拥有完整的句子。问题是我不知道如何使数字等于单词。提前感谢您的帮助

【问题讨论】:

  • 你已经尝试了什么?你能展示你自己的代码并准确解释什么不符合你的期望吗?请阅读如何整理minimal reproducible example 以获得指导。

标签: python list python-2.7 python-3.x


【解决方案1】:

这里可能需要一个字典,它将键映射到值。您可以通过压缩前两个列表来创建字典。使用这本词典,将任何数字列表映射到单词应该相当简单:

mapping = dict(zip(['2', '1'], ['equals', 'x']))

mapping
# {'1': 'x', '2': 'equals'}

[mapping.get(num) for num in ['1', '2', '1']]
# ['x', 'equals', 'x']

要将列表变成一个句子,请使用join 方法:

" ".join(mapping.get(num) for num in ['1', '2', '1'])
# 'x equals x'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-01-20
    • 2019-01-15
    • 2022-12-17
    • 2014-01-05
    • 1970-01-01
    • 2020-08-23
    • 2020-05-27
    • 1970-01-01
    相关资源
    最近更新 更多