जब सूची को सभी संभावित टपल जोड़े में विभाजित करने की आवश्यकता होती है, तो एक विधि को परिभाषित किया जा सकता है जो एक पैरामीटर के रूप में एक सूची लेता है और सूची के माध्यम से पुनरावृति करने के लिए सूची समझ का उपयोग करता है और 'विस्तार' विधि का उपयोग करता है
उदाहरण
नीचे उसी का एक प्रदर्शन है
def determine_pairings(my_list): if len(my_list) <= 1: return [my_list] result = [[my_list[0]] + element for element in determine_pairings(my_list[1:])] for index in range(1, len(my_list)): result.extend([[(my_list[0], my_list[index])] + element for element in determine_pairings(my_list[1: index] + my_list[index + 1:])]) return result my_list = [56, 31, 78, 0] print("The list is :") print(my_list) my_result = determine_pairings(my_list) print("The resultant pairs are :") print(my_result)
आउटपुट
The list is : [56, 31, 78, 0] The resultant pairs are : [[56, 31, 78, 0], [56, 31, (78, 0)], [56, (31, 78), 0], [56, (31, 0), 78], [(56, 31), 78, 0], [(56, 31), (78, 0)], [(56, 78), 31, 0], [(56, 78), (31, 0)], [(56, 0), 31, 78], [(56, 0), (31, 78)]]
स्पष्टीकरण
-
'determine_pairings' नाम की एक विधि परिभाषित की गई है जो एक सूची को एक पैरामीटर के रूप में लेती है।
-
सूची की लंबाई 1 से अधिक होने के लिए जाँच की जाती है।
-
प्राथमिकी तत्व को छोड़कर तत्वों पर विचार किया जाता है और विधि को फिर से कहा जाता है।
-
यह एक वैरिएबल को असाइन किया गया है।
-
सूची को फिर से दोहराया जाता है, और पहला तत्व और सूचकांक तत्व चर में जोड़ा जाता है।
-
इसे आउटपुट के रूप में लौटाया जाता है।