我必须从函数中返回许多变量:
a = 5
b = 6
c = 8
d = 6
...
return a,b,c,d,e,f,g,h
问题是我想通过数组来保存代码行:
for (...):
ar[x] = ... # For x = a,b,c,d,e, ...
但我必须返回格式为“returna,b,c,d,e”的变量,我不想把它写成:
return ar[a], ar[b], ar[c], ...
我能用发电机吗?怎么用?比如:
return item for item in len(ar)
Tags:
当您“返回多个变量”时,实际上只是返回一个元组。您可以这样做:
甚至
当然,假设您的数组包含您希望以正确顺序返回的所有内容,并且仅此而已。你知道吗
如果能看到更多的代码就更好了,但是如果可以使用循环填充列表,那么它在语义上就是一个单一的值(同质集合)。你知道吗
您可以这样做:
这将返回元组形式的值,并在另一端解包
使用生成器表达式和
tuple
:如果索引是连续的,则可以使用切片:
如果要返回整个元组/列表本身,只需按原样返回:
请注意,返回
tuple
并不是必须的,更多关于它的讨论在这里:Python: Return tuple or list?相关问题 更多 >
编程相关推荐