Ho una lista di più interi e stringhe ['-200', '0', '200', '400', 'verde', '0', '0', '200', '400', ' yellow ',' 200 ',' 0 ',' 200 ',' 400 ',' red '] Ho difficoltà a separare la lista ogni 5 elementi e creare una nuova lista con solo 5 elementi all'interno. Tuttavia, non voglio 3 liste diverse, ne voglio solo una che cambi ogni volta che passa un nuovo 5 elementi.Come si può dividere un elenco ogni x elementi e aggiungere la quantità x di elementi a un nuovo elenco?
8
A
risposta
19
si desidera qualcosa di simile:
composite_list = [my_list[x:x+5] for x in range(0, len(my_list),5)]
print (composite_list)
uscita:
[['-200', ' 0', ' 200', ' 400', ' green'], ['0', '0', '200', '400', ' yellow'], ['200', '0', '200', '400', ' red']]
Che cosa si intende per una "nuova" 5 elementi?
Se si desidera aggiungere a questa lista si può fare:
composite_list.append(['200', '200', '200', '400', 'bluellow'])
1
si potrebbe fare in una sola frase come
>>> import math
>>> s = ['-200', ' 0', ' 200', ' 400', ' green', '0', '0', '200', '400', ' yellow', '200', '0', '200', '400', ' red']
>>> [s[5*i:5*i+5] for i in range(0,math.ceil(len(s)/5))]
L'uscita dovrebbe essere:
[['-200', ' 0', ' 200', ' 400', ' green'], ['0', '0', '200', '400', ' yellow'], ['200', '0', '200', '400', ' red']]
0
Penso che dovrai creare 1 nuova lista, ma se ho capito bene, vuoi una lista annidata con 5 elementi in ogni sottolista.
si potrebbe provare la seguente:
l = ['-200', ' 0', ' 200', ' 400', ' green', '0', '0', '200', '400', ' yellow', '200', '0', '200', '400', ' red']
new = []
for i in range(0, len(l), 5):
new.append(l[i : i+5])
Questo farà un passo attraverso la vostra prima lista, 'l', e il gruppo 5 elementi insieme in un elenco secondario nella nuova. Uscita:
[['-200', ' 0', ' 200', ' 400', ' green'], ['0', '0', '200', '400', ' yellow'], ['200', '0', '200', '400', ' red']]
Spero che questo aiuti
Problemi correlati
- 1. Python - Come estrarre gli ultimi x elementi da un elenco
- 2. Elementi elenco di gruppi con una distanza inferiore a x
- 3. Cerca un elenco di elementi stringa che corrispondono ad un altro elenco di elementi stringa
- 4. Creazione di un nuovo elenco che aggiunge e somma elementi da un elenco precedente
- 5. restituisce un elenco di elementi da un elenco in OCaml
- 6. Come aggiungere più elementi a un elenco in Emacs lisp
- 7. Elementi concatenati di un elenco
- 8. Come aggiungere elementi a un elenco in R (anello)
- 9. Recupera x elementi casuali da un array
- 10. Come dividere una stringa per x quantità di caratteri
- 11. Raggruppa elementi di un elenco con un python a gradini?
- 12. Recupera un elenco di elementi correlati di un elenco di elementi in un array di basi
- 13. Come aggiungere un elenco statico di elementi in MVC Html.DropDownList()
- 14. Python: come aggiungere nuovi elementi in un elenco di elenchi?
- 15. Dividere un elenco python da un carattere in ogni elemento
- 16. elementi univoci in un elenco haskell
- 17. Come operare sugli elementi di un elenco?
- 18. Prolog rimuovi elementi multipli da un elenco
- 19. dividere un elenco utilizzando LINQ
- 20. Riproduzione casuale di elementi in un elenco (riordinamento casuale degli elementi di elenco)
- 21. Modo semplice per aggiungere elementi da un elenco a un altro elenco
- 22. Aggiornamento MongoDB (inserire un elenco di elementi in una matrice)
- 23. Rimozione di elementi da un elenco
- 24. "elenco articoli" o "elenco elementi"
- 25. Java - Iterazione su ogni due elementi di un elenco
- 26. aggiungere tuple a un elenco
- 27. Come posso raggruppare in base a un elenco di elementi?
- 28. Come si estrae elementi distinti da un elenco?
- 29. Come si ottiene un elenco di indici di elementi diversi da zero in un elenco?
- 30. aggiungere un carattere a ogni elemento in un elenco
dispiace ~ comprendono male. Lo aggiorneremo immediatamente. – Sheng