मेरी स्क्रिप्ट का आउटपुट एक सूची और एक नेस्टेड सूची है। मैं इंडेक्स द्वारा दो सूचियों के संयोजन प्राप्त करना चाहता हूं। इस उदाहरण में, मेरे पास निम्नलिखित दो सूचियाँ हैं:

x = [0, 1, 2, 3]

y = [[0, 1, 2, 3],
 [0, 1, 2, 3, 4, 5, 6, 7, 8],
 [0, 1, 2, 3, 4],
 [0, 1, 2, 3, 4, 5, 6, 7, 8]]

वांछित आउटपुट कुछ इस तरह दिखना चाहिए।

[(0, 0), (0, 1), (0, 2), (0, 3), (1, 0), (1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (1, 6), (1, 
7), (1, 8), (2, 0), (2, 1), (2, 2), (2, 3), (2, 4), (3, 1), (3, 2), (3, 3), (3, 4), (3, 5), 
(3, 6), (3, 7), (3, 8)]

मैंने itertools.combinations और itertools.product के बारे में कई पोस्ट देखी हैं, लेकिन मुझे एक ही समय में लूपिंग और संयोजन के बारे में कुछ भी नहीं मिल रहा है, जो मुझे लगता है कि समस्या का दृष्टिकोण होगा। मैं सभी संयोजन x [0] और y [0] प्राप्त करना चाहता हूं, फिर x [1] और y [1], आदि।

0
brando_ 10 फरवरी 2021, 05:52

2 जवाब

सबसे बढ़िया उत्तर

आप इसे सूची समझ के साथ कर सकते हैं।

x = [0, 1, 2, 3]

y = [[0, 1, 2, 3],
 [0, 1, 2, 3, 4, 5, 6, 7, 8],
 [0, 1, 2, 3, 4],
 [0, 1, 2, 3, 4, 5, 6, 7, 8]]

final = [(i,j) for i in x for j in y[i]]
1
Mitchell Olislagers 10 फरवरी 2021, 05:59

ऐसा लगता है कि आप दो ऐरे का कैटिडियन गुणन करने जा रहे हैं। यहां संदर्भ जांच है और मुझे बताएं कि क्या आपके लिए काम किया है। x का कार्टेशियन उत्पाद और y सरणी 2D बिंदुओं की एकल सरणी में इंगित करती है

0
NIKHIL KULSHRESTHA 10 फरवरी 2021, 06:00