मुझे अपने कार्यक्रम में थोड़ी परेशानी है, मैं सूची के कुछ तत्वों को उनकी अनुक्रमणिका जानने के लिए लेना चाहता हूं और फिर इन तत्वों को दूसरी सूची में जोड़ना चाहता हूं ... उदाहरण के लिए:

a= ['dog','cat','house','car']
c=[]
#list with the indexes:
b=[0,2]

इसलिए मैं इंडेक्स "0" और "2" के साथ ए के तत्वों को निकालना चाहता हूं और उन्हें सी सूची में जोड़ना चाहता हूं।

2
Diego Mencos 27 मार्च 2018, 03:36

3 जवाब

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

अपने सूचकांक सरणी के माध्यम से पुनरावृति करें, आइटम को अनुक्रमणिका पर पॉप करें और इसे अपने नए सरणी में जोड़ें।

i = 0
while i < len(b):
c.append(a.pop(b[i]))
i+=1
0
Lece 27 मार्च 2018, 00:46

आप पहली सरणी को एक numpy सरणी में परिवर्तित कर सकते हैं। फिर आप बी से इंडेक्स पर आसानी से पास कर सकते हैं।

import numpy as np
a = np.array(['dog','cat','house','car'])
b = [0,2]
c = a[b]

print(c) 
>>> array(['dog', 'house'],
  dtype='<U5')

C को वापस सूची में बदलने के लिए, बस .tolist() का उपयोग करें

print(c.tolist())
>>> ['dog', 'house']
0
BlueScr33n 27 मार्च 2018, 01:07

टिप्पणियाँ भी मददगार थीं, लेकिन यहाँ यह संक्षेप में है: बी में तत्वों के माध्यम से लूप, ए से इंडेक्स निकालें और इसे सी में जोड़ें।

for i in b:
    c.append(a.pop(i))

सूची समझ के साथ ऐसा करने का एक तरीका हो सकता है, लेकिन मुझे अभी तक यह नहीं पता है। उम्मीद है की यह मदद करेगा!

2
Christopher Marley 27 मार्च 2018, 00:50