有更好的方法来做到这一点吗?一个朋友告诉我要避免else
,以保持代码清洁,但我无法找到另一种方法。
if listA[0] in listB:
k = listA[0]
else:
k = listB[1]
在if语句之前,您可以做
k = listB[1]
这样就没有其他东西。整个块看起来像这样:
k = listB[1]
if listA[0] in listB:
k = listA[0]
三元操作员分配:
k = listA[0] if listA[0] in listB else listB[1]
https://www.webucator.com/how-to/how-do-do-ternary-operator-aSignment-python.cfm
我不会争论它是一种"更好"的方法,但是这是避免else
的另一种方法:
def foo():
#do stuff
if listA[0] in listB:
return listA[0]
return listB[1]
顺便说一句,我从事几个项目,他们有不同的样式指南。