I have a feeling there should be a very easy way to access specific elements from an evaluated function. A very simple example of what I am trying to achieve is
def func(x):
a = 2*x
b = x*x
return 1, 10, 100, (a,b)
I define a value for x and the function returns a set of values and a tuple. I would like to retrieve (for example) the first element and the tuple. Code such as
hello, cello = func(2)[[0,3]]
Returns an error. However I can access these elements individually,
bello = func(2)[3]
for example.
The function I am using takes a while to evaluate so making it run twice is not a desirable option. Furthermore, if possible I would not like to create a pile of variables for each individual element of the tuple (contains many).
In essence I would like a solution that is along the lines of:
hello, cello = func(2)[[0,3]]
Where,
hello = 1
cello = (4,4)
Thanks
So you can unpack and ignore:
hello, _, _, cello = func(2)
But if the result is more complicated you can use operator.itemgetter:
from operator import itemgetter
hello, cello, bello = itemgetter(0, 3, 15)(func(2))
Or more verbosely:
my_results = itemgetter(0, 3, 15)
hello, cello, bello = my_results(func(2))
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With