You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中实现字符串列表转布尔嵌套列表的最优雅方式是什么?

更Pythonic的布尔值列表转换实现

你可以用嵌套列表推导式来大幅简化代码,这是Python中最符合风格的简洁写法之一:

arr = ['XOOXO',
       'XOOXO',
       'OOOXO',
       'XXOXO',
       'OXOOO']

bool_lists = [[char == 'X' for char in s] for s in arr]

代码说明

  • 外层列表推导式遍历原列表中的每个字符串 s
  • 内层列表推导式遍历字符串中的每个字符 char,直接通过 char == 'X' 生成布尔值(比较运算本身就会返回 True 或 False,无需额外的 if-else 判断)
  • 全程无需手动维护临时列表,一行代码完成所有转换,可读性和简洁性拉满

如果你偏好使用 map 函数,也可以这样写:

bool_lists = [list(map(lambda c: c == 'X', s)) for s in arr]

这里用 map 配合匿名函数将每个字符转为布尔值,再通过 list() 把map对象转为列表,外层同样用列表推导式遍历所有字符串。

内容的提问来源于stack exchange,提问作者Mark Boyd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 04:04:57