python-3.x - 如何检查值中的所有字母
问题描述
例如,我在下面有一个字典:
a = {'0': {'a', 'c', 'd', 'e', 'b', 'f'},
'1': {'c', 'b'},
'2': {'a', 'd', 'e', 'b', 'g'}}
假设我的输入是'eb'。我想检查哪个键同时包含“e”和“b”。如何使我只返回 0 和 2 作为键,而不是 1 (因为 1 包含 b )?
因为我使用的是“if letter in v”,但这只检查每个字母('e',然后是'b')。如果它们在值中,如何检查整个字符串(所有字符)?
基本上我如何拆分字符串,但不以列表形式返回单个字符
解决方案
使用set.issubset
:
[k for k, v in a.items() if set("eb").issubset(v)]
输出:
['0', '2']
推荐阅读
- mysql - Go 1.15 中与 Google Cloud SQL 的 SSL 连接中断
- vue.js - 如何将 fontawesome 与 nuxt.js 集成?
- javascript - 循环遍历数组并将每个元素设置为对象的属性会导致顺序混乱
- asp.net - 有没有办法可以从 ASP.NET Core 项目中删除数据库迁移?
- python - 将任意字符串转换为可读的掷骰结果的最佳方法是什么?
- java - Android Studio:json数组中只显示一张图片
- tabs - 如何在 doxygen 文档中添加我们自己定义的选项卡
- android - 执行 org.jetbrains.kotlin.gradle.internal.KaptExecution 时发生故障 - 带有 Glide 的 Firebase UI
- javascript - 无法将数据从 JSON 加载到数据表中
- reactjs - 单击项目覆盖另一个数据