一般来说,在Python中,嵌套if
语句在逻辑上是否等同于其中的if
语句?and
所以会:
lista = ["1", "2"]
if "1" in lista and not "3" in lista:
print("True")
Run Code Online (Sandbox Code Playgroud)
与以下相同:
lista = ["1", "2"]
if "1" in lista:
if not "3" in lista:
print("True")
Run Code Online (Sandbox Code Playgroud)
或者Python对它们有不同的对待吗?
是的,这些是等效的。
\n但是,如果有 \xe2\x80\x93 分支,则需要小心,else
许多错误是由于之间的错误转换引起的
if a and b:\n do something\nelse:\n do a different thing\n
Run Code Online (Sandbox Code Playgroud)\n和
\nif a:\n if b:\n do something\nelse:\n do a different thing\n
Run Code Online (Sandbox Code Playgroud)\n