Hier ist mein Code:Python While-Schleife nicht ordnungsgemäß arbeiten
def pressC():
""" Wait for "c" to be entered from the keyboard in the Python shell """
entry = " "
while(entry != "c"):
entry = raw_input("Press c to continue. ")
print("Thank you. ")
print
def unstuck():
""" This gets the robot unstuck if it becomes stalled by hitting a wall """
stalls = 0
while timeRemaining(120):
stallStatus = getStall()
if(stallStatus == 1):
backward(1,1)
turnRight(1,1.7145)
stalls = stalls + 1
return stalls
else:
forward(1,1)
stop()
def printResults(stalls):
""" This function prints the amount of times the robot stalled """
print
print ("The amount of stalls that occured: " + str(stalls) + ". ")
def main():
pressC()
numStalls = unstuck()
printResults(numStalls)
main()
Also, ich bin mit dem Code auf dem myro Simulator und den benutzerdefinierten unstuck() Funktion nur einmal ausgeführt wird, und dann Druck, der Roboter ist nur einmal ins Stocken geraten. Die erste While-Schleife wird ordnungsgemäß ausgeführt, die zweite While-Schleife jedoch nicht. Wie auch immer, ich möchte, dass es für die 120 Sekunden läuft, die ich eingegeben habe. Ich brauche Hilfe!
'while' ist keine Funktion, und ich werde glücklich wetten, es funktioniert gut. – jonrsharpe
Bitte stellen Sie sicher, dass Sie Ihren Einzug richtig kopieren, wenn Sie Python-Code posten. Schlecht eingerückter Python-Code ist Unsinn. – khelwood
Sorry, aber es ist nicht. Ich glaube, es hat etwas mit den gedruckten Ergebnissen zu tun. Ich habe diesen Teil gelöscht und die while-Schleife funktioniert einwandfrei, also glaube ich, dass es etwas mit meiner Kodierung in diesem Bereich zu tun hat. –