जब आपके पास किसी फ़ंक्शन से कई आउटपुट होते हैं और आप इसे कई बार कॉल नहीं करना चाहते हैं, तो मुझे लगता है कि परिणाम चुनने का सबसे स्पष्ट तरीका होगा:
results = fct()
a,b = [results[i] for i in list_of_index]
एक न्यूनतम कार्य उदाहरण के रूप में, यह प्रदर्शित करना कि फ़ंक्शन केवल एक बार कहा जाता है:
def fct(a):
b=a*2
c=a+2
d=a+b
e=b*2
f=a*a
print("fct called")
return[a,b,c,d,e,f]
results=fct(3)
> fct called
x,y = [results[i] for i in [1,4]]
और मान अपेक्षित हैं:
results
> [3,6,5,9,12,9]
x
> 6
y
> 12
सुविधा के लिए, पायथन सूची अनुक्रमित का भी उपयोग किया जा सकता है:
x,y = [results[i] for i in [0,-2]]
रिटर्न: एक = 3 और बी = 12
~
एक विशेष रिटर्न वैरिएबल को अनदेखा करने के लिए वाक्यविन्यास के रूप में उपयोग करते हैं