if count == N:
count = 0
else:
count = N + 1
count = count == N ? 0 : count + 1;
而且,您仍然可以使用 “普通” if
语法并将其与冒号合并为一行。
if i > 3: print("We are done.")
要么
field_plural = None
if field_plural is not None: print("insert into testtable(plural) '{0}'".format(field_plural))
count = 0 if count == N else N+1
- 三元运算符。尽管我会说您的解决方案比这更具可读性。
通用三元语法:
value_true if <test> else value_false
另一种方法可以是:
[value_false, value_true][<test>]
例如:
count = [0,N+1][count==N]
在选择一个之前,这将评估两个分支。仅评估所选分支:
[lambda: value_false, lambda: value_true][<test>]()
例如:
count = [lambda:0, lambda:N+1][count==N]()
<execute-test-successful-condition> if <test> else <execute-test-fail-condition>
加上您的代码段,它将变成
count = 0 if count == N else N + 1