Seite 1 von 1

Re: List erstellen

Verfasst: Sonntag 20. März 2016, 20:27
von miracle173

Code: Alles auswählen

>>> x=15
>>> y=3
>>> ([0]*(y-1)+[1])*(x//y)+[0]*(x%y)
[0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1]
 
Der Teil +[0]*(x%y) ist in diesem speziellen Fall, wo y die Zahl x teilt, überflüssig.

Eine andere Möglichkeit wäre

Code: Alles auswählen

(([0]*(y-1)+[1])*-(-x//y))[:x]
-(-x//y) garantiert dass der Quotient aufgerundet wird. Allerdings wird hier von der erzeugten Liste mit [:x] nochmals eine Kopie erzeugt.