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
- 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.
hahaha danke, ich war bisschen dämlich. Hab es bisschen anders gemacht: https://pastebin.com/5HxXtzBu
Bin wohl bisschen übermüdet oder so xD
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
[f"{n:04}" for n in range(10000)]
andere Frage wie kann ich damit in Minecraft einen Code für ne Truhe heraus finden?
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)]
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)
for i in range(10000):
print('{0:04}'.format(i))
...wenn du es nur printen willst.
for i in range(10000):
print(i)
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?