List erstellen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Benutzeravatar
miracle173
User
Beiträge: 127
Registriert: Samstag 6. Februar 2016, 00:28

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.
Antworten