J'ai écrit le code à l'aide de la boucle, je souhaite le code dans la compréhension de la liste. attendre le code ci-dessus dans la compréhension de la liste. p> p>
3 Réponses :
peut être fait sans créer d'autres variables telles que k code> et const code>
Si vous souhaitez transformer une partie de la boucle et utiliser encore une variable MainLst CODE>, il ressemblera à: [[2, 3, 4, 5], [3, 4, 5, 6], [4, 5, 6, 7], [5, 6, 7, 8]]
Vous pouvez utiliser l'opérateur itemGetter code> avec SLICE code> pour obtenir des tranches de sublistes de la liste et chaîne.from_itéable code> pour fusionner les sublistes dans une liste : from operator import itemgetter
from itertools import chain
mainLst = [[2],[3],[4],[5],[6],[7],[8]]
[list(chain.from_iterable(itemgetter(slice(i, i + 4))(mainLst))) for i in range(4)]
# [[2, 3, 4, 5], [3, 4, 5, 6], [4, 5, 6, 7], [5, 6, 7, 8]]