如何在下面的代码snipet中评估if - elif中的多个表达式。
我确定它的基本语法问题
n=5
if n%2 != 0:
print ("weird")
elif n%2 == 0 && 2 < n && n <5:
print "Not Weird"
elif n%2 == 0 && 6 < n && n < 20:
print "Weird"
elif n%2 == 0 && n >20:
print "NOt Weird"
答案 0 :(得分:2)
试试这个:
n = 5
if n % 2:
print("weird")
elif 2 < n < 5:
print("Not Weird")
elif 6 < n < 20:
print("Weird")
elif n > 20:
print("NOt Weird")
答案 1 :(得分:0)
将尺寸缩小一点:
n = 5
if n % 2 != 0:
print("weird")
else:
if 2 < n < 5:
print("Not Weird")
elif 6 < n < 20:
print("Weird")
elif 20 < n:
print("NOt Weird")
答案 2 :(得分:0)
写作时要注意的其他几点:
1.如果条件重复将其分解为嵌套的if-else,则不要重复代码。使用2 < n < 5
而不是2 < n and n < 5
,以pythonic风格编写代码
3.对于默认情况使用else,不要放置不必要的条件
4.您使用的是两种不同风格的印花,请使用一种。
n=5
if n%2 != 0:
print("weird")
else:
if 2 < n < 5:
print("Not Weird")
elif 6 < n < 20:
print("Weird")
else:
print("NOt Weird")
答案 3 :(得分:0)
如果if / elif语句中有多个分支执行相同的操作,则可以使用n = 5
if n % 2 != 0 or (not n % 2 and 6 < n < 20):
print("weird")
else:
print("Not Weird")
运算符。
这样的事情可能有用:
SetEnvIf CF-IPCountry "(.*)" COUNTRY=$1
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{ENV:COUNTRY} [A-Z]{2}
RewriteCond %{QUERY_STRING} !country [NC]
RewriteRule ^/consultation(.*) %{REQUEST_URI}?country=%{ENV:COUNTRY} [L,QSA,R]
</IfModule>
答案 4 :(得分:0)
试试这个
SDL_RenderClear(playContext->display->renderer);
SDL_RenderCopy(playContext->display->renderer, playContext->textureQ.head->bmp, NULL, NULL);
SDL_RenderPresent(playContext->display->renderer);