j
एक खाली सूची है, लेकिन आप [0]
पहले पुनरावृत्ति में तत्व को लिखने का प्रयास कर रहे हैं , जो अभी तक मौजूद नहीं है।
सूची के अंत में एक नया तत्व जोड़ने के लिए, इसके बजाय निम्नलिखित प्रयास करें:
for l in i:
j.append(l)
बेशक, यदि आप एक मौजूदा सूची की प्रतिलिपि बनाना चाहते थे, तो आप कभी भी ऐसा नहीं करेंगे। आप बस करेंगे:
j = list(i)
वैकल्पिक रूप से, यदि आप अन्य भाषाओं में एक सरणी की तरह पायथन सूची का उपयोग करना चाहते थे, तो आप एक सूची बना सकते हैं, जिसमें इसके तत्वों को एक शून्य मान ( None
नीचे उदाहरण में) के साथ सेट किया जा सकता है , और बाद में, विशिष्ट पदों में मूल्यों को अधिलेखित कर सकते हैं:
i = [1, 2, 3, 5, 8, 13]
j = [None] * len(i)
#j == [None, None, None, None, None, None]
k = 0
for l in i:
j[k] = l
k += 1
महसूस करने वाली बात यह है कि कोई list
वस्तु आपको किसी ऐसे इंडेक्स के लिए मान प्रदान करने की अनुमति नहीं देगी जो मौजूद नहीं है।
append
आपके उपयोग के मामले के लिए सही समाधान है, हालांकि अजगर सूची पर एक सम्मिलित विधि है जो सूची में सीधे i'th स्थिति में सम्मिलित कर सकती है।j.insert(k, l)