给定一个列表,有没有办法获得第一个非None值?而且,如果是这样,那么这样做的pythonic方式是什么?
例如,我有:
a = objA.addreses.country.code b = objB.country.codec = None d = 'CA'在这种情况下,如果a是None,那么我想得到b.如果a和b都是None,我想得到d.
目前我正在做一些事情(((a or b) or c) or d),有另一种方式吗?
我可以这样做,但必须有更好的方法:
arr = []
if len(arr) > 0:
first_or_None = arr[0]
else:
first_or_None = None
Run Code Online (Sandbox Code Playgroud)
如果我只是执行 arr[0] 我会得到 IndexError。我可以提供默认参数吗?