Python 0000 bis 9999 generieren?
Hi, komische Frage, ich weiß. Also ich will alle Zahlen Kombinationen generieren die 4 Stellig sind. Jemand Ahnung wie das geht? Bin bisschen Planlos, hab gerade irgendwie keine Idee wie das gehen kann.....
EDIT:
War gestern ein bisschen ENORM Übermüdet, Sorry ... Hier ist meine eigene Lösung:
5 Antworten
![](https://images.gutefrage.net/media/default/user/8_nmmslarge.png?v=1551279448000)
- Schleife von 0 bis < 10.000 erstellen
- Zählvariable in String umwandeln
- Stringlänge abfragen und fehlende Stellen vorne mit Nullen auffüllen
Wenn du damit dann weiterrechnen willst/musst, dann wieder in eine Zahl umwandeln.
Zum Beispiel so:
for i in range(10000):
temp = "" + str(i)
while len(temp)<4:
temp = "0" + temp
print(temp)
Allerdings bin ich nicht wirklich in Python bewandert.
![](https://images.gutefrage.net/media/default/user/15_nmmslarge.png?v=1551279448000)
Arbeite zwar nicht mit Python, habe aber diese Seite gefunden: https://medium.com/guvi/random-number-generator-that-generates-random-numbers-between-1-and-6-8930b134486b
![](https://images.gutefrage.net/media/user/iNeedHelp961/1652456406743_nmmslarge__0_0_256_256_fb5dc5ef4d72bc83b4476f60739c3ee3.png?v=1652456407000)
hahaha danke, ich war bisschen dämlich. Hab es bisschen anders gemacht: https://pastebin.com/5HxXtzBu
Bin wohl bisschen übermüdet oder so xD
![](https://images.gutefrage.net/media/user/daCypher/1444744777_nmmslarge.jpg?v=1444744777000)
[f"{n:04}" for n in range(10000)]
![](https://images.gutefrage.net/media/user/daCypher/1444744777_nmmslarge.jpg?v=1444744777000)
Sorry für die späte Antwort, ich war letzte Woche krank.
Das "n" ist das, was du wahrscheinlich schon selbst gesehen hast. Das ist einfach die Variable n vom "for n in range(10000)". Der Doppelpunkt bedeutet, dass danach eine Formatierungsoption kommt und die 04 ist die Formatierungsoption. Bedeutet: Mindestens 4 Stellen lang und mit Nullen aufgefüllt. Wenn du die 0 weglassen würdest, würde die Zahl mit Leerzeichen aufgefüllt werden.
Details zu den Formatierungsoptionen findest du hier: https://docs.python.org/3/library/string.html#formatspec
Man könnte den Code z.B auch so schreiben:
["{:04}".format(n) for n in range(10000)]
oder in der älteren Variante:
["%04d" % n for n in range(10000)]
![](https://images.gutefrage.net/media/user/daCypher/1444744777_nmmslarge.jpg?v=1444744777000)
Die "0" ist dafür da, dass es mit Nullen aufgefüllt wird. Du kannst ja mal ein paar Sachen durchprobieren:
n = 25
f"{n:04}" # Ergebnis: '0025'
f"{n:4}" # Ergebnis: ' 25'
f"{n:0}" # Ergebnis: '25'
f"n:04" # Ergebnis: 'n:04'
f"{n:04b}" # Ergebnis: '11001' (binär)
f"{n:04x}" # Ergebnis: '0019' (hex)
![](https://images.gutefrage.net/media/user/larspostor/1616945690994_nmmslarge__169_169_960_960_ef3b5325cda648b66b5fa4c1248a1cc9.jpg?v=1616945691000)
andere Frage wie kann ich damit in Minecraft einen Code für ne Truhe heraus finden?
![](https://images.gutefrage.net/media/user/Kreasteve/1549907211360_nmmslarge__198_0_693_693_4414c15c41e45323101da0045847e66d.jpg?v=1549907211000)
for i in range(10000):
print('{0:04}'.format(i))
...wenn du es nur printen willst.
![](https://images.gutefrage.net/media/default/user/10_nmmslarge.png?v=1551279448000)
for i in range(10000):
print(i)
![](https://images.gutefrage.net/media/user/CarinaSchoppe/1656762387545_nmmslarge__0_0_1080_1080_6145e06401a4d56d7dfd2a6b5c0e7ff5.jpg?v=1656762388000)
Generieren 4 Mal n random integer wert zwischen 0 und 10 Wandel dem in n String um und füge ihn an den vorherigen an
Was ist dieses n:04 in deinem f-string? Habe das noch nie gesehen also was passiert da genau?