Esempio 01
Abbiamo creato il nostro primo esempio inizializzando due elenchi, i.e., L1 e L2. L'elenco L1 contiene cinque elementi di tipo stringa in esso, mentre l'elenco L2 è inizialmente vuoto. Quindi, abbiamo inizializzato un ciclo "per". Pertanto, prendendo l'intervallo di un elenco L1 a partire da 0 alla lunghezza dell'elenco L1. L'istruzione "if" è stata ulteriormente utilizzata per controllare una stringa in un elenco L1. Abbiamo usato la stringa "nome" per verificare se è già nell'elenco L1 o no. Se la condizione è stata soddisfatta, il valore all'indice specifico in cui il valore abbinato verrebbe salvato nell'elenco L2 allo stesso indice. Poiché non abbiamo inizializzato la dimensione dell'elenco L2, lancerà un'eccezione. Dopo il ciclo "per", entrambi gli elenchi sono stati stampati:
Quando eseguiamo il codice utilizzando il pulsante "Esegui" dalla barra del menu Spyder3, lancia un'eccezione, io.e., Indexerror: indice di assegnazione dell'elenco fuori porta come visualizzato nell'istantanea allegata:
Questo errore può essere risolto utilizzando la funzione Append () nel programma. L'unica modifica è l'utilizzo del metodo Append all'interno dell'istruzione "if" del ciclo "per" per aggiungere il valore in un particolare indice dell'elenco L2 dall'indice dell'elenco L2:
Eseguiamo di nuovo il codice per vedere se il codice funziona ora. Questa volta il codice avrà successo e abbiamo l'elenco L1 e L2 separatamente come output visualizzato nell'istantanea allegata:
Esempio 02
In questo esempio, useremo un semplice elenco vuoto per aggiungere un po 'di valore ad esso. Al contrario, la logica non verrebbe definita correttamente. Quindi, abbiamo inizializzato un elenco vuoto "L". Il ciclo "per" è stato usato con l'iteratore "I" nell'elenco "L" dalla sua gamma da 1 a 10. L'iteratore "io" verrebbe salvato nell'indice "i" dell'elenco l. Ciò significa che il valore dell'iteratore verrebbe salvato solo all'indice dell'elenco L, che sarebbe lo stesso del valore "i" iteratore. Nell'ultimo, l'istruzione di stampa è stata utilizzata per stampare l'elenco aggiornato L.
Quando eseguiamo il codice sopra, lancia un'eccezione che l'indice di assegnazione dell'elenco è fuori portata, come visualizzato nell'istantanea allegata:
Una funzione append () può anche essere utilizzata per affrontare i seguenti problemi. Quindi, abbiamo aggiornato il codice ancora una volta. Lo stesso elenco vuoto "L" è stato inizializzato qui. Abbiamo definito un intervallo diverso per le iterazioni del loop "per", i.e., Da 2 a 15. Quindi, il metodo Append () è stato utilizzato qui per aggiungere il valore "I" iteratore all'elenco. L'istruzione di stampa è stata utilizzata per stampare gli elementi dell'elenco:
Dopo aver eseguito il codice aggiornato, abbiamo acquisito gli elementi di elenco aggiornati come visualizzato nell'istantanea allegata:
Conclusione:
Questo articolo contiene l'implementazione di Indexerror: indice di assegnazione elenco fuori portata insieme alle sue soluzioni. Abbiamo usato il metodo Append () per risolverlo, ma puoi anche usare il metodo insert (). Speriamo che questo articolo abbia fornito utili suggerimenti. Se vuoi altri suggerimenti, controlla Linuxhint.