我有一种感觉,应该有一种非常简单的方法可以从一个已评估的函数中访问特定元素。我试图实现的一个非常简单的例子是
def func(x):
a = 2*x
b = x*x
return 1, 10, 100, (a,b)
我定义了一个变量x,函数返回一组值和一个元组。我想检索(例如)第一个元素和元组。代码如下:
hello, cello = func(2)[[0,3]]
返回一个错误。但是我可以单独访问这些元素。
bello = func(2)[3]
例如。
我正在使用的函数需要一段时间来评估,因此使其运行两次并不是一个理想的选择。此外,如果可能的话,我不想为元组的每个单独元素(包含许多个)创建一堆变量。
本质上,我希望有一个解决方案,类似于:
hello, cello = func(2)[[0,3]]
Where,
hello = 1
cello = (4,4)
谢谢。
hello,_,_,cello = func(2)
。 - AChampion[[0,3]]
只是 Python 中无效的语法。如果你省略函数,只处理一个元组(1, 10, 100, (2, 3))
,它也无法工作。 - Daniel Rosemanx[[0,3]]
一样进行索引,但列表和元组不行。 - hpauljx,_,_,(_,b)=func(3)
?但我觉得像这样的函数应该返回一些复合对象(元组或字典的元组),而不是一个很长的元组。期望从一个长元组中获取第三个和第十个项目是在自找麻烦。 - hpaulj