2016-12-21 7 views
0

Kurz bevor ich die Frage stelle, würde ich gerne sagen, dass ich Python sehr neu bin, also was auch immer ich frage, könnte einfach sein.Python | Stoppen/Neustarten eines Skripts nach user_input

Meine Frage ist das: Wie stoppe ich das Skript, nachdem diese Frage beantwortet wurde.

s1 = input("Is your phone freezing/stuttering? ") 
if s1 == "Yes" or s1 == "yes": 
    print("Try deleting some apps and this might help with your problem") 
if s1 == "No" or s1 == "no": 
    def foo(): 
     while True: 
      return False 

Also, was ich genau hier soll, wenn der Benutzer antwortet mit ‚Ja‘ ich der Lösung will zu kommen und das Skript zu stoppen oder wenn möglich sogar neu starten.

+2

Was denken Sie 'def foo()' tut? Ich wollte wissen, was du denkst, damit ich dir klar machen kann, dass es nicht tut, was du denkst. – MYGz

+0

'def foo()' ist nutzlos - Sie definieren die Funktion, aber Sie verwenden sie nicht (Sie führen sie nicht aus). 'while True: return False' macht dasselbe wie simple' return False' – furas

Antwort

0

Ein einfacher Ausgang könnte dadurch erreicht werden.

Ich benutzte auch die untere Funktion, so dass es ein bisschen mehr pythonic

Mit nur einer einfachen Schleife aussehen:

s1 = "yes" 
while s1 == "yes": 
    s1 = input("Is your phone freezing/stuttering? ").lower() 

Viel Glück!

+0

@furas Ist das der gleiche Frager. Du und ich haben eine Frage wie diese schon einmal beantwortet. – MYGz

+0

@furas Ich habe eine Lösung mit nur einer einfachen Schleife sowie –

+0

hinzugefügt @MohammadYusufGhazi Ich sehe diese Frage zum ersten Mal, aber OP hat ähnliche Frage in seinem Profil http://StackOverflow.com/Questions/41144688/Python-Skipping-a -user-input – furas

-3

Was Sie tun können, ist eine Schleife erstellen um es

x = 4 
while x == 4: 
    s1 = input("Is your phone freezing/stuttering? ") 
    if s1 == "Yes" or s1 == "yes": 
     print("Try deleting some apps and this might help with your problem") 
    if s1 == "No" or s1 == "no": 
     def foo(): 
      while True: 
       return False 
     break #<-- only if you want the program to end after false# 
+1

warum 'x == 4 '? 'while True' wird das gleiche tun – furas

+1

foo wird nie aufgerufen. – runDOSrun

Verwandte Themen