海象操作符 - :=
通过海象操作符来精简代码
count = f1()
if count:
print(count)
else:
f2()上述代码的简化:
if count := f1():
print(count)
else:
f2()通过海象操作符来精简代码
count = f1()
if count > 4:
print(count)
else:
f2()上述代码的简化:
if (count := f1()) > 4:
print(count)
else:
f2()通过海象操作符实现 switch/case
count = f1()
if count > 2:
a = f2(count)
b = f3(a)
else:
count = f1('a')
if count > 4:
b = f3(count)
else:
count = f1('c')
if count:
b = f4(count)
else:
b = 'n'上述代码的简化:
if (count := f1()) > 2:
a = f2(count)
b = f3(a)
elif (count := f1('a')) > 4:
b = f3(count)
elif count := f1('c'):
b = f4(count)
else:
b = 'n'通过海象操作符简化 while 循环
a = f()
while a:
b = f1()
a = f()上述代码的简化:
while a := f():
b = f1()在推导式中简化
has_bug = {name: get_batches(stock.get(name,0),8)
for name in order
if get_batches(stock.get(name,0),8)}found = {name: batches for name in order
if (batches :=get_batches(stock.get(name,0),8))}