如何检查列表中是否存在整数



我正在使用python的一个项目。我想知道列表中是否有整数。我不想使用count()或contains()。我正在寻找是否有一个整数,而不仅仅是一个特定的字符。有办法吗?

您可以使用.any()isinstance()进行检查

如果可迭代对象中任何一项为真,则any()函数返回True,否则返回False。

如果指定的对象是指定的类型,则isinstance()函数返回True,否则返回False。

l1=["Hello","There",2,4,'1',"integer"]
if any(isinstance(j,int) for j in <list>):
print("Integer found!")
else:
print("No integer is there in the list.")
list1 = ['1', '2', '1.0', 's','1.2']
for i in list1:
try:
int(i)
print(i , "is int")
# return true
except:
print(i, "error")

1是整型2是整数1.0错误年代错误1.2误差

循环遍历列表并使用isinstance

from typing import List, Any

def is_int_in_list(lst: List[Any]) -> bool:
for x in lst:
if isinstance(x, int):
return True
return False

lst1 = ['x', 12, {}]
print(is_int_in_list(lst1))
lst2 = ['x', '12', {}]
print(is_int_in_list(lst2))
list1 = [1, 2, 3, "car", "bike"]
list2 = ["yes" if type(x) == int else "no" for x in list1]
print(list2)

最新更新