python - 如何检查元组列表是否包含所需的元素
问题描述
如何检查元组列表是否仅包含具有元素('name','surname','adress','car','color')和('name','surname','adress')元组的元组不存在带有单个“汽车”和“颜色”
a =[
('name', 'surname', 'adres', 'car', 'colour'),
('name', 'surname', 'adres'),
('name', 'surname', 'adres', 'colour'),
('name', 'surname', 'adres', 'car')
]
for elem in a:
if 'car' not in elem and 'colour' not in elem:
print(elem)
下面的元组是可以的:
('name', 'surname', 'adres', 'car', 'colour')
('name', 'surname', 'adres')
解决方案
你想像解决逻辑问题一样解决这个问题。您要么(a)在元组中找到两个值,要么(b)在元组中都没有值。您几乎可以将该表达式编码为简单的语言,如下所示:
def is_valid(t):
return ('car' in t and 'colour' in t) or ('car' not in t and 'colour' not in t)
推荐阅读
- automated-tests - Surefire-report-plugin 生成报告包含最后的测试执行结果
- sql - 如何检索两个不同表中的记录?
- ubuntu - EC2 django nginx,双防火墙8000+80
- asp.net-mvc - 如何使用 Razor htmlhelper 在 @html.My.TextboxControl 中使用“我的”
- javascript - 重复的模块名称:反应
- ansible - Ansible 使用模板管理 ssh 用户
- css - 我开发的页面上的滚动问题
- javascript - 如何重定向到相同的路径?
- laravel-5.7 - Laravel 5.7 如何计算唯一网站访问者?
- json - 导入本地 Json 是同步还是异步