我正在使用一个返回结果为列表的Python库函数。根据实验配置,该列表由一个或两个元素组成。在这种情况下,将函数输出分配给变量的一种简单方法如下:
bbox, segm = None, None
results = test_model() # returns a list with either one or two elements
bbox = results[0]
if len(results) > 1:
segm = results[1]
# [some other code here]
if segm is not None:
plot(segm)
然而,这种方式看起来有些啰嗦,因为我们需要先将bbox
和segm
都初始化为None
,然后再判断 if len(results) > 1
。有没有一种更Pythonic的方法可以避免这种情况呢?理想情况下,以下代码会非常好:
bbox, segm = test_model() # returns a list with either one or two elements
if segm is not None:
plot(segm)