Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.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 如果我们有多个条件,为什么if条件评估失败?_Python_Python 3.x_Conditional Statements - Fatal编程技术网

Python 如果我们有多个条件,为什么if条件评估失败?

Python 如果我们有多个条件,为什么if条件评估失败?,python,python-3.x,conditional-statements,Python,Python 3.x,Conditional Statements,当我执行下面的代码时,条件在不中断执行的情况下通过 在第二个循环中,此条件检查应失败[inta[i]==0]。但我看到它正在通过。我能知道答案吗 我尝试使用以下代码,此条件失败。但是,如果我包括多个条件,它是失败的 a=['0'] 如果inta[0]==0: 打印无效 实际代码 a="25605511135" str='' for i in range(0,len(a),3) : word = a[i:i+3] print(a[i]) lis= [int(a[i])==0,int(word

当我执行下面的代码时,条件在不中断执行的情况下通过

在第二个循环中,此条件检查应失败[inta[i]==0]。但我看到它正在通过。我能知道答案吗

我尝试使用以下代码,此条件失败。但是,如果我包括多个条件,它是失败的

a=['0'] 如果inta[0]==0: 打印无效

实际代码

a="25605511135"
str=''
for i in range(0,len(a),3) :
 word = a[i:i+3]
 print(a[i])
 lis= [int(a[i])==0,int(word) > 255]
 if all(lis):
  print("Invalid")
  break
预期结果应为:-2 0无效

应该执行break语句

word的值为256、055、111、35。也把它们打印出来看看。 a[i]的值是2,0,1,3。 只有当[i]为0且word>255时,alllis才为真,这在输入字符串中从未发生过。因此,您的代码似乎按照编写时的要求执行


您需要澄清您的标准是什么,以及您希望如何评估这些标准。

您认为[inta[i]==0,intword>255]在做什么?提示0,intword>255的计算结果为元组0,intword>255如果at i=6,word将等于111,小于255,那么您希望如何生成无效值?请出于您所珍视的一切考虑,不要使用单空格缩进,尤其是在Python中。它很难阅读,而且在缩进很重要的语言中,它需要额外的关注点来阅读。深思熟虑地使用空行也有助于提高可读性。Python设计为可读的。它建议使用四个空格indentation.str作为内置函数。请不要将其用作变量。您在每次迭代中都会覆盖lis。我想你是指lis.appendinta[I]==0或intword>255!