python - 在 Python 中检查每个列表元素是否与特定字符串匹配的简单方法
问题描述
我在 Python 中有以下列表:
my_list = ["yes", "yes", "no", "yes", "no", "yes"]
我想返回一个逻辑值列表,True
以防 my_list 中的相应列表元素等于“yes”,False
如果 my_list 中的相应列表元素等于“no”。
期望的输出:
my_list_logical = [True, True, False, True, False, True]
我通常在 R 中编程,在 R 中,这可以通过以下代码轻松完成:
my_list == "yes"
我在这个线程中找到了一个 Python 解决方案。然而,这个线程的解决方案非常复杂,我不敢相信这在 Python 中比在 R 中复杂得多。
有没有一种简单的方法可以根据我的输入向量返回逻辑列表?
解决方案
您可以使用列表理解:
my_list = ["yes", "yes", "no", "yes", "no", "yes"]
logical = [item=='yes' for item in my_list]
输出:
[True, True, False, True, False, True]
或者,您甚至可以使用地图:
logical = list(map(lambda x: x=='yes', my_list))
推荐阅读
- smartsheet-api - 将 GET Row 与 Smartsheet API 一起使用时,是否有任何简单的方法来获取列标题?
- python - PyQt 以编程方式建立连接
- html - 您可以在 HTML 中为扩展整个文档的标签省略结束标签吗?
- javascript - 使用淘汰赛js从按钮转换为拖放文件上传
- apache-spark - 为什么即使在从源读取数据帧后缓存数据帧后,火花也会从源读取数据?
- excel - 使用 Excel 的 STOCKHISTORY 函数对价格求和而不显示数据
- javascript - ReactJS - 在滚动时更改导航栏颜色
- java - 弹簧靴返回未找到
- android - 如何在不使用 .mtl 文件但仅在 android 中使用 .obj 文件的情况下渲染 3d 网格的材质/颜色。有没有办法读取obj?
- java - 如何在会话 java 中存储 ResourceBundle 对象?