Ich habe dieses Stück Code (für die Praxis):Python: Wie wiederhole ich eine Iteration einer for-Schleife?
def choose_dice():
while True:
try:
dice_quantity = int(input("How many dice would you like to use? "))
dice_sides = []
for current_dice in range(1, dice_quantity + 1):
sides = int(input("How many sides on {} dice? ".format(str(current_dice) + ordinal(current_dice))))
dice_sides.append([str(current_dice) + ordinal(current_dice) + " dice", sides])
# print(dice_sides)
return dice_sides
except (TypeError, ValueError) as _:
print("Oops, it seems you have entered a non integer ")
, die den Benutzer für eine Reihe aufgefordert und dann für x in Bereich (1, Nummer) fordert den Benutzer auf eine Nummer zu wählen.
Wenn der Benutzer während der for-Schleife einen ganzzahligen Wert oder gar nichts eingibt, möchte ich zur aktuellen Iteration der for-Schleife zurückkehren, anstatt von vorn zu beginnen.
Wie kann ich das elegant erreichen?
dh das aktuelle Verhalten ist als solche:
„Wie viele Würfel würden Sie verwenden 3
Wie viele Seiten auf 1. Würfel 6
Wie viele Seiten im 2. Würfel?? 0
Wie viele Seiten am 3. Würfel?
Hoppla, es scheint, dass Sie eine nicht ganze Zahl
eingegeben habenWie viele Würfel würdest du gerne benutzen? "
Wenn ein Benutzer nichts eingibt, wird er in der Ausnahme gefangen und der gesamte Prozess beginnt von neuem. Ich möchte, dass er die aktuelle" Wie viele Seiten auf n-ten Würfeln? "Wiederholt, anstatt die Schleife zu starten Kratzer von
Wenn ein Benutzer 0 eingibt, welches Verhalten möchten Sie durchführen? Kannst du das bitte klären? – apadana
dh das aktuelle Verhalten ist als solche: „Wie viele Würfel würden Sie verwenden 3 Wie viele Seiten auf 1. Würfel 6 Wie viele Seiten im 2. Würfel 0 Wie viele Seiten am 3. Würfel ??? Ups, es scheint, Sie haben eine nicht ganzzahlige eingegeben Wie viele Würfel möchten Sie verwenden?" (Ich bearbeite meinen Beitrag, da ich das erforderliche Verhalten für Benutzer habe, die 0 eingeben) Wenn ein Benutzer nichts eingibt, wird er in der Ausnahme gefangen und der gesamte Prozess beginnt von neuem. Ich möchte, dass er es erneut versucht aktuelle "Wie viele Seiten auf n-ten Würfeln?" anstatt die Schleife von Grund auf neu zu starten Danke für Ihre Hilfe – Lijok