我有一个问题,我还没有找到一个很好的解决方案。我正在寻找一种更好的方法来将函数输出附加到两个或更多列表,而不使用临时变量。下面的例子:将函数输出附加到几个列表的Python方法
def f():
return 5,6
a,b = [], []
for i in range(10):
tmp_a, tmp_b = f()
a.append(tmp_a)
b.append(temp_b)
我试着玩东西像拉链(* f()),但还没有找到一个解决方案。 任何方式来删除那些临时变量将是非常有用的,谢谢!
编辑其他信息: 在这种情况下,函数的输出数将始终等于要追加的列表数。我期望摆脱临时工的主要原因是可能有8-10个函数输出,并且有许多临时变量会变得杂乱无章(尽管我并不喜欢有两个)。
您是否需要在for循环的每次迭代中调用函数,或者只需调用一次? – iafisher
列表的数量是否总是等于函数返回的元组中元素的数量,或者,如果函数只返回一个单一的东西,是否需要将该项目追加到所有列表中?你的问题有点含糊。 – martineau
如果您想编写“Pythonic”代码,我建议您阅读并遵循[PEP 8 - Python代码风格指南](https://www.python.org/dev/peps/pep-0008/),在许多其他事情中,建议用4个空格缩进。 – martineau