python - 使列表与另一个列表 python 完全匹配

标签 python list

我正在制作一个存在于另一个列表中的元素列表。有两个条件:

条件 1. 需要完全匹配,因此我不使用“if y in x”。

条件2、需要保留原列表的顺序

rhg_brands = ['Radisson Collection', 'Radisson Blu', 
                'Park Plaza', 'Radisson Red', 'Radisson']

brands_in_df = ['Radisson Collection', 
                'Park Plaza', 'Radisson Red', 'Radisson']

#remove brands from rhg_brands if they're not in the brands_in_df 
rhg_brands = set(rhg_brands).intersection(set(brands_in_df))  

#output:
{'Park Plaza', 'Radisson', 'Radisson Collection', 'Radisson Red'}

我希望输出以某种方式保留原始列表的顺序。

以下是所需输出的示例:

{'Radisson Collection', 'Park Plaza', 'Radisson Red', 'Radisson', }

最佳答案

你的“期望输出”是一个集合(花括号),但你说你想要一个列表。因此,请按如下方式使用列表理解。

result = [x for x in rhg_brands if x in brands_in_df]

assert result==['Radisson Collection', 'Park Plaza', 'Radisson Red', 'Radisson' ]

关于python - 使列表与另一个列表 python 完全匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54808346/

相关文章:

python - 使用 mmap 将正则表达式应用于整个文件

C# Xml 序列化 List<T> 具有 Xml 属性的后代

python - 将字典内的列表更改为集合?

css - 使用 CSS 的平行列表项的高度相等

list - 在 Prolog 中查找列表中列表的长度

python - 查看 Python (Django) 中的当前日志记录配置

python - 使用 python 以相同的速率迭代文本文件中的列表和行?

python - Matplotlib 将动画保存为视频但获取空内容

Python3 写入 gzip 文件 - 内存 View : a bytes-like object is required, 不是 'str'

list - 如何在TCL中将列表的某些部分复制到新列表?