ich eine einfache Liste Splitting Frage:Split Liste Verständnis in verschachtelten Listen auf einem regelbasierten
eine verschachtelte Liste wie folgt angegeben:
x = [[1,4,3],[2,3,5,1,3,52,3,5,2,1],[2]]
Ich mag ferner jedes Element aufgeteilt (Teilliste) länger als 3, und deren Länge ein Vielfaches von 3 oder 3 n + 1 in Teillisten der Länge 3, mit Ausnahme der letzten Brocken, so das Ergebnis, das ich will, ist:
x2 = [[1,4,3], [2,3,5],[1,3,52],[3,5,2,1],[2]]
denke ich, es sein kann, getan mit itertools.groupby an d/oder Ertrag Funktionen ... konnte aber nicht die Details zusammen >> a_function (x) ...
splits = [ a_function(x) if len(x)>3 and (len(x) % 3 == 0 or len(x) % 3 == 1) else x for x in x]
Könnte jemand bitte geben Sie mir einige Hinweise? Vielen Dank.
Für Listen, die nicht durch drei teilbar sind, wie werden sie gehandhabt ...? –
Auch http://stackoverflow.com/questions/312443/how-do-you-split-a-list-into-evelly-sized-chunks-in-python?rq=1. –
@ g.d.d.c, vielen Dank für Ihre Antwort! 3n + 2 Werte bleiben so wie sie sind ... und vielen Dank für den Link !! tho merkte ich, dass meine Frage ein bisschen mehr beteiligt ist, als ich gerade jetzt redigierte ... – shenglih