如何为列表中的每个项目添加一个布尔值?

Posted

技术标签:

【中文标题】如何为列表中的每个项目添加一个布尔值?【英文标题】:How do I add a boolean value to each item in a list? 【发布时间】:2021-08-10 23:15:53 【问题描述】:

感谢您花时间回答。 我正在制作一个作为初学者 Python 项目的刽子手游戏。\

我将“单词”拆分成一个列表,每个项目都是单词的一个字符。

word = "word" 
letters = []
letters[:] = word
print(letters)

["w","o","r","d"]

我不太确定如何为每个列表项分配一个布尔值,创建元组,如下所示:

[("w", False),("o", False), ("r", False), ("d", False)]

我该怎么做?

【问题讨论】:

【参考方案1】:

通过list comprehension:

word = "word"
result = [(char, False) for char in word]

通过maplambda

word = "word"
result = list(map(lambda x: (x, False), char))

【讨论】:

而不是i,使用lettercharacter 可能更具可读性 i 替换为char @jakub【参考方案2】:

我会选择使用 zip 和列表理解

word = ["w","o","r","d"]
booleanValues = [False,False,True,True]
lst = [(let,boo) for let,boo in zip(word,booleanValues)]

输出

[('w', False), ('o', False), ('r', True), ('d', True)]

现在,如果您只想将 False 分配给每个元组,您可以尝试以下操作。

word = ["w","o","r","d"]
lst = [(let,False) for let in word]

【讨论】:

【参考方案3】:

列表理解

word = "word" 
letters = []
letters[:] = word
res = [(val, False) for val in letters]
print(res)




【讨论】:

以上是关于如何为列表中的每个项目添加一个布尔值?的主要内容,如果未能解决你的问题,请参考以下文章

如果它出现在MYSQL中的组中,如何为每个值返回'true / false'?

Django 管理员。当对象具有布尔字段== True时,如何为列表视图中的每一行添加背景颜色?

布尔列表检查列表中的每个项目是不是为假

如何为记录类型创建布尔类型的字段?

ComboBoxItem 中的复选框绑定到 Class 中的布尔值。如何从每个项目中获取每个布尔值?

数组列表按布尔值排序,然后按日期 JavaScript / TypeScript