检查列表值

时间:2011-08-31 15:12:49

标签: python

我有一个只能包含整数的列表,如何继续控制列表的每个元素,如果它不是int,则返回一条消息?

我可以用某种方式使用isdigit()吗?

由于

4 个答案:

答案 0 :(得分:6)

您可以使用all和抽象基类Number

>>> all(isinstance(x, Number) for x in mylist)

答案 1 :(得分:0)

您可以使用抽象基类numbers和一个简单的循环:

from numbers import Number

for item in my_list:
    if not isinstance(item, Number):
        print '{} is not a number'.format(item)

答案 2 :(得分:0)

为什么不在这种情况下使用Array

来自docs:

  

数组是序列类型,其行为与列表非常相似,只是存储在其中的对象类型受到约束。

答案 3 :(得分:-1)

您可以检查列表中的所有元素是否属于特定类型:

all(map(lambda x: type(x) == type(0), list))

这将返回False iif至少有一个list元素与0的类型不同。您可以根据您是否需要整数或实数来改变条件以满足您的需求其他