假设这样的事情:
if mylist[0] == 1 or mylist[12] == 2:
# do something
Run Code Online (Sandbox Code Playgroud)
但我不确定是否mylist[12]
永远不会超出范围.如何保持简单并仍然检查索引是否存在?不想做
if mylist[0] == 1:
# do something
elif mylist[12] == 2:
# do the EXACT same thing
Run Code Online (Sandbox Code Playgroud)
因为你得到了太多相同的代码行.
Mar*_*ers 10
你可以查看列表的长度:
if mylist[0] == 1 or (len(mylist) > 12 and mylist[12] == 2):
Run Code Online (Sandbox Code Playgroud)
这使用短路行为and
来确保mylist[12]
如果列表有12个或更少的项目将不会被评估.