相关疑难解决方法(0)

python的可变长度参数(*args)在函数调用时扩展生成器吗?

请考虑以下Python代码:

def f(*args):
    for a in args:
        pass

foo = ['foo', 'bar', 'baz']

# Python generator expressions FTW
gen = (f for f in foo)

f(*gen)
Run Code Online (Sandbox Code Playgroud)

是否*args在通话时自动扩展发电机?换句话说,我在gen内部迭代两次f(*gen),一次扩展*args,一次迭代args?或者是生成器保持原始状态,而迭代只在for循环期间发生一次?

python iteration function generator

9
推荐指数
1
解决办法
3414
查看次数

标签 统计

function ×1

generator ×1

iteration ×1

python ×1