例如,如果我输入:
li=[33];
3 in li
我明白了:
False
如果我检查33是否存在,当然我得到“真实”。 如何正确检查列表元素中是否存在数字?
答案 0 :(得分:2)
这是一个非常简单的方法:
li = [33,44,55]
['3' in str(x) for x in li]
这给出了
[True, False, False]
通过使用列表推导,我们会浏览li
的元素,将值转换为str
。然后检查字符串中是否为'3'(或您想要的任何值)。
此操作的结果是li
的长度列表,其值为True
或False
。
这也适用于n位数字,即
['31' in str(x) for x in [1314]]
也会返回true。
这里我们隐含地假设li
的所有元素都可以作为字符串传递。
答案 1 :(得分: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]