Python 如果我们有多个条件,为什么if条件评估失败?
当我执行下面的代码时,条件在不中断执行的情况下通过 在第二个循环中,此条件检查应失败[inta[i]==0]。但我看到它正在通过。我能知道答案吗 我尝试使用以下代码,此条件失败。但是,如果我包括多个条件,它是失败的 a=['0'] 如果inta[0]==0: 打印无效 实际代码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
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!