如何通过list = None验证迭代?

时间:2018-01-15 11:43:21

标签: python python-3.x algorithm

如何检查迭代不会超过None? 我写了以下代码:

async def foo(categories: list=None):
    for category in categories or []:

这是一种好方法,还是我可以避免在每次迭代中以某种方式检查or []

1 个答案:

答案 0 :(得分:2)

让我们测试一下。

def foo():
    print('In foo')
    return range(5)

现在,如果我在foo循环(for)的头部调用for _ in foo(),则应该在调用/评估时多次打印In foo

所以,

for _ in foo():
    pass

In foo

只召唤一次。这意味着它只被评估过一次。

相关问题