如果列表中的所有==某物

发布于 2021-01-29 17:17:24

使用Python 2.6,有没有一种方法可以在一条语句中检查序列的所有项是否等于给定值?

[pseudocode]
my_sequence = (2,5,7,82,35)

if all the values in (type(i) for i in my_sequence) == int:
     do()

而不是说:

my_sequence = (2,5,7,82,35)
all_int = True
for i in my_sequence:
    if type(i) is not int:
        all_int = False
        break

if all_int:
    do()
关注者
0
被浏览
41
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    采用:

    all( type(i) is int for i in lst )
    

    例:

    In [1]: lst = range(10)
    In [2]: all( type(i) is int for i in lst )
    Out[2]: True
    In [3]: lst.append('steve')
    In [4]: all( type(i) is int for i in lst )
    Out[4]: False
    

    [编辑]。根据评论进行清洁。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看