Mam listę wielu liczb całkowitych i ciągów znaków [-200 ',' 0 ',' 200 ',' 400 ',' green ',' 0 ',' 0 ',' 200 ',' 400 ',' yellow ',' 200 ',' 0 ',' 200 ',' 400 ',' red '] Mam trudności z oddzieleniem listy co 5 elementów i utworzeniem nowej listy z zaledwie 5 elementami w środku. Jednak nie chcę 3 różnych list, chcę tylko jeden, który zmienia za każdym razem, gdy przechodzi 5 nowych elementów.Jak można podzielić listę co x elementów i dodać te x ilość elementów do nowej listy?
8
A
Odpowiedz
19
Chcesz coś takiego:
composite_list = [my_list[x:x+5] for x in range(0, len(my_list),5)]
print (composite_list)
wyjściowa:
[['-200', ' 0', ' 200', ' 400', ' green'], ['0', '0', '200', '400', ' yellow'], ['200', '0', '200', '400', ' red']]
Co masz na myśli przez "nowych" 5 elementów?
Jeśli chcesz dołączyć do tej listy można zrobić:
composite_list.append(['200', '200', '200', '400', 'bluellow'])
1
Można to zrobić w jednym zdaniu jak
>>> 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))]
Następnie wyjście powinno być:
[['-200', ' 0', ' 200', ' 400', ' green'], ['0', '0', '200', '400', ' yellow'], ['200', '0', '200', '400', ' red']]
0
Czuję, że musisz utworzyć 1 nową listę, ale jeśli dobrze rozumiem, potrzebujesz zagnieżdżonej listy z 5 elementami w każdym podlista.
można spróbować następujących czynności:
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])
To będzie krok po swoim pierwszym liście, „L”, oraz grupy 5 elementów razem do podmenu w nowym. Wyjście:
[['-200', ' 0', ' 200', ' 400', ' green'], ['0', '0', '200', '400', ' yellow'], ['200', '0', '200', '400', ' red']]
Nadzieja to pomaga
Powiązane problemy
- 1. Python - Jak wyodrębnić ostatnie x elementów z listy
- 2. Jak podzielić (porcją) tablicę Ruby na części elementów X?
- 3. Jak dodać do listy listę elementów w języku C#?
- 4. Jak dodać dwie listy elementów do jednej listy?
- 5. Ilość elementów w ArrayList
- 6. Jak iterować dla X elementów w Thymeleaf?
- 7. javascript - jak rozbić łańcuch co X ilość znaków?
- 8. Jak skutecznie dodać prefiks do wszystkich elementów listy?
- 9. uporządkuj listę elementów - jQuery?
- 10. Jak grupować według listy elementów?
- 11. Sztuczki dla elementów pływających wewnątrz elementów listy
- 12. Tworzenie alternatywną listę elementów
- 13. Podział ciąg po x ilość samej liczbie
- 14. Kod jQuery wrap po x liczba elementów
- 15. zapytań dla najlepszych elementów X w Django
- 16. Zwracanie pierwszych x elementów z tablicy
- 17. Używanie elementów listy i indeksów razem
- 18. Podziel listę co n elementów i cbind, następnie plasterki rbind
- 19. Bardziej ogólnie funkcja liczby pasujących elementów wśród elementów n listy
- 20. Podział elementów listy w pythonie
- 21. Łączenie elementów listy
- 22. Kolejność elementów listy spełniających warunek
- 23. Jak dodać wydarzenie jQuery do wszystkich obecnych i przyszłych elementów?
- 24. Podzielić listę elementów n * n na n list z n elementami na każdej liście
- 25. ArrayDeque dodać wiele elementów
- 26. wyłączanie i wyszarzanie elementów listy
- 27. Jak ignorować błędy i kontynuować przetwarzanie elementów listy?
- 28. Konwertuj listę do ramki danych z zachowaniem nazw elementów listy
- 29. Przekazywanie elementów listy jako parametrów do funkcji o zmiennych argumentach
- 30. Usuń wiele elementów listy (Python)
Sorry ~ źle zrozumieć. Natychmiast ją zaktualizuje. – Sheng