如果有的话(j!=""对于i中的j):是什么意思?

时间:2017-03-01 07:20:03

标签: python

if any(j != " " for j in i):

izip_longest是什么意思

还有一个网站,他们有所有这些的定义?

2 个答案:

答案 0 :(得分:1)

!= 表示不相等

for j in i 表示遍历i的每个元素并将结果放入j

所以例如,如果我是这样的列表:

i=[" ", " ", " "]

然后j!=“”对于j我将检查每个项目,看它是不是“”

当放入any()时,如果任何j值不是“”,它将返回true。因此,对于上面i的示例,整体结果将为false,因为i中的所有项目都是“”。

如果我们改为将i设置为包含其他内容:

i==[" ", " ", "x"]

然后

if any(j != " " for j in i):

将返回True,因为它会找到一个不是“”的元素(其中一个是“x”)

答案 1 :(得分:0)

一步一步:

  1. (j!=""对于i中的j)返回带有布尔元素的生成器(True,False)
  2. 示例:

    i = ['a','b','c',' ', 'd']
    gener = (j != " " for j in i)
    print list(gener)
    [True, True, True, False, True]
    
    1. function any():如果列表中的任何元素为True,则返回True。如果列表为空,则返回False。
    2. 示例:

      print any([True,False,False])
      True
      
      print any([False,False,False])
      False
      
      print any([])
      False
      

      因此,表达式any(j!=""对于i中的j)如果列表中的任何元素i = ="则返回True。 "如果列表i中的所有元素都等于"则返回False; "或者我是空的