有没有办法在单行 for 循环中增加变量?

Kra*_*ral 2 python for-loop

鉴于以下定义

layerData = [3, 3, 2, 1, 1]

bias = [0.47, -0.45, 0.31, -0.09, 0.21 ,-0.18, 0.14, -0.45, -0.39, -0.14]

Run Code Online (Sandbox Code Playgroud)

bias列表的头部开始,对于我中的每个元素NlayerData我想从中取出下一个N元素bias并将该列表附加到结果中

这是它应该输出的内容:

[[0.47, -0.45, 0.31], [-0.09, 0.21, -0.18], [0.14, -0.45], [-0.39], [-0.14]]
Run Code Online (Sandbox Code Playgroud)

ala*_*ani 5

您可以使用迭代器 -next每次需要值时调用它。

>>> bias = [0.47, -0.45, 0.31, -0.09, 0.21 ,-0.18, 0.14, -0.45, -0.39, -0.14]
>>> layerData = [3, 3, 2, 1, 1]
>>> it = iter(bias)
>>> [[next(it) for _ in range(n)] for n in layerData]
[[0.47, -0.45, 0.31], [-0.09, 0.21, -0.18], [0.14, -0.45], [-0.39], [-0.14]]
Run Code Online (Sandbox Code Playgroud)