Python:如何判断列表中的元素是否包含某个数字?

问题描述 投票:1回答:2

例如,如果我输入:

li=[33];
3 in li

我明白了:

False

如果我检查33是否存在,当然我得到“真实”。如何正确检查列表元素中是否存在数字?

python python-3.x list boolean
2个回答
2
投票

一个非常简单的方法是这个:

li = [33,44,55]
['3' in str(x) for x in li]

这给了

[True, False, False]

通过使用列表推导,我们通过li的元素,将值转换为str。然后检查字符串中是否为'3'(或您想要的任何值)。此操作的结果是li的长度列表,其值为TrueFalse

这也适用于n位数字,即

['31' in str(x) for x in [1314]]

也返回true。

在这里,我们隐含地假设li的所有元素都可以作为字符串。


2
投票

这是一个比较的功能方法:

lst = [5, 1, 23, 6, 33, 31, 15]

res = list(map(lambda x: '3' in x, map(str, lst)))

# [False, False, True, False, True, True, False]
© www.soinside.com 2019 - 2024. All rights reserved.