我正在尝试创建一个多层IF语句,我不确定下面的语句是否格式正确。
我在阅读下面嵌套的IF语句时遇到问题,是否可以更有效地编写此代码?
谢谢,
if (a>= gT) and (cLow> rBT):
print("Alpha 1")
if (a_high> c_high) and (c_low < d_low):
if (a> abc) and (a< c_low):
print("Final Count")
if (min(a, b) > min(c, d)) and \
(max(e,f) > max(g, h)): print("All Memory Deleted")
答案 0 :(得分:5)
除了使缩进更均匀,删除多余的括号,结合第二次和第三次if
测试之外,你无法做很多事情来改进它。
if a >= gT and cLow > rBT:
print("Alpha 1")
if a_high > c_high and c_low < d_low and a > abc and a < c_low:
print("Final Count")
if min(a, b) > min(c, d) and max(e,f) > max(g, h):
print("All Memory Deleted")
组合第二次和第三次if
测试是安全的原因是and
运算符“短路”,即expression_1 and expression_2
expression_1
expression_2
如果if (min(a, b) > min(c, d) and
max(e,f) > max(g, h)):
未评估,则为false。有关此主题的更多信息,请参阅示例(在Python 2中),请参阅我的答案here。
http
.authorizeRequests()
.antMatchers("/**")
.hasRole("USER")
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login.html")
.permitAll()
.and().csrf().disable()
;
有关详细信息,请参阅Python样式指南PEP-0008。
答案 1 :(得分:1)
虽然可能有几个原因不这样做,但是如果你的嵌套if语句的可读性对你来说很重要,那么就会想到执行时间,这样的事情也适用。
str=str.replace(/\/$/, "")
str=str.replace(\/,",")