Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 测试列表中的非类型元素_Python_List_Recursion_Nonetype - Fatal编程技术网

Python 测试列表中的非类型元素

Python 测试列表中的非类型元素,python,list,recursion,nonetype,Python,List,Recursion,Nonetype,我有这样一个列表inputs=[None,None,None,None,None,None] 我想评估所有元素是否都相同,但没有: 如果是,则返回一个空列表,该列表为[] 到目前为止,我所尝试的似乎不起作用: 如果所有(输入)均为无: 打印([]) 其他: 打印(“其他东西” 在所有中,您需要迭代输入,并将每个元素分别与无进行比较,即: all()告诉您传递给它的iterable中的每个元素是否都是True。因此,all([True,True,True])应该是True,但是all([True,

我有这样一个列表
inputs=[None,None,None,None,None,None]
我想评估所有元素是否都相同,但没有: 如果是,则返回一个空列表,该列表为[]

到目前为止,我所尝试的似乎不起作用:

如果所有(输入)均为无:
打印([])
其他:
打印(“其他东西”

所有
中,您需要迭代
输入
,并将每个元素分别与
进行比较,即:

all()
告诉您传递给它的iterable中的每个元素是否都是
True
。因此,
all([True,True,True])
应该是True,但是
all([True,False])
不会

如果要查看是否所有元素都是
,则需要:

all(x is None for x in inputs)

这样做的目的是使用生成器对
输入中的所有值进行循环,检查它们是否为
None
all()
检查所有这些结果,并返回
True
如果它们都为
True

,则需要在all()中迭代列表的元素。这应该会有所帮助

inputs = [None, None, None, None, None, None, None, None]

if all(i is None for i in inputs):
  print([])
else:
  print("Something Else")


all(输入中的x为None)
如果一个元素不是None怎么办-打印所有的None和一个元素的原样?
print([a为输入中的a,如果a为None])
只能用于打印列表中的None-
None
元素-对于所有
None
s的列表,这等于
[]
。但是为什么在这样的场景中,“#inputs=[3,0,1,2,None]#print([i for i in inputs in if i])”0被评估为None呢?它不会被评估为
None
if i
将测试
i
是否真实-签出
inputs = [None, None, None, None, None, None, None, None]

if all(i is None for i in inputs):
  print([])
else:
  print("Something Else")