2017-12-21 5 views
-1
nicht beheben

Grundsätzlich meine Frage ist diese 'ungültige Syntax' an der oberen [möchten Sie spielen? ] 'keine Antwort.Kann Python ungültige Syntax

Aber wenn ich es lösche geht das Problem auf die nächste Zeile. Es ist sehr nervig und ich kann nicht finden, wie man es löst.

Ich habe versucht, zwischen den wechselnden und "aber das Ergebnis ist immer noch das gleiche.

ich froh wäre, wenn jemand von euch die Zeit bis zum Ansprechen nehmen würde, wie ich gestern gerade erst begonnen und ist noch nicht ganz klar über ungültige .. Syntax

+0

Sie benötigen ein Schließen Pars auf dieser Linie? 'print (" hallo, "+ name", in diesem spiel bist du ein berühmter detektiv, der einen diebstahl begeht. "' - Warum ist das nicht wie bei deinen anderen druckanweisungen? 'print:" ok dann, tschüss "' --- Im Grunde müssen Sie ein ** viel ** vorsichtiger beim Schreiben ** genau ** sein, was Sie kopieren. Schließen ist nicht gut genug. Sie müssen genau sein. – jwpfox

+0

zu viele falsche Syntax Ich würde pycharm oder eine andere IDE empfehlen –

+0

Ihr Code hat viele sehr grundlegende Fehler. Einige Zeilen sind weit davon entfernt, Python zu sein. Tut mir leid, aber ich denke, du musst das Tutorial noch einmal durchgehen. –

Antwort

0
if choice 'no' : 

ist der Täter (und gleiches Problem auf der Leitung 8 und an anderer Stelle), um die Expression erfordert ein == zu machen:

if choice == 'no' : 

Zeile 3 verursacht jedoch ein Problem, bevor Sie dort ankommen - choice ist nicht definiert. == ist ein logischer Operator, es bedeutet nicht die Zuweisung, wie es der Code zu diesem Zeitpunkt tun müsste. Ändern Sie ihn auszuführen Zuordnung mit =:

choice = input("Yes or no?") 

Auch ist es besser, gegen niedrigere Fall zu testen, weil Sie nicht wissen, welche Kombination aus Groß- und Kleinbuchstaben können vom Anwender eingegeben werden:

if choice.lower() == 'no' : 

Zeile 9 liest start - wieder. Vielleicht meinst du das als Kommentar? Wenn dies der Fall ist, fügen Sie am Anfang der Zeile eine '#' hinzu.

Diese Probleme sind die Spitze des Eisbergs. Vielleicht sollten Sie ein paar Tutorials lesen und in kleinen iterativen Schritten programmieren, um Ihr Programm aufzubauen.

+0

Diese Antwort nähert sich nicht einmal der Lösung aller Syntaxfehler und anderer Probleme im Code. Es muss gut über ein Dutzend sein. – ekhumoro

+1

@Ekhumoro: muss irgendwo anfangen :) – mhawke

+0

Ich denke, das OP muss beginnen, indem Sie lernen, Tracebacks zu lesen. Wenn sie versuchen, die Probleme zu "lösen", indem sie Zeilen löschen, die Ausnahmen auslösen, werden sie nicht viel Code übrig haben: – ekhumoro

0

Versuchen Sie folgendes:

import time 

def game() 

    print("hello, do you want to play this detective game?") 

    choice == input("Yes or no?") 

    if choice == 'no' : 

     print("ok then, bye") 

     break 
    if choice == 'yes': 

     name == input("Enter your name") 

     print("hello, " + name ", in this game you are a famous detective handling a theft case." 
     time.sleep(1) 
     print(" you have gone on a holiday but ended up lost in the forest. you see a man walking up to you") 
     time.sleep(1) 
     print ("man:' hi there! you seem quite lost! Do you want to stay the night with me?'") 
     print(" you said:'why should i? i dont even know you'") 
     print(" man : ' Do as you please, but if you stay in the forest for the night here's a friendly warning: there's wild wolves in the forests.'") 
     choose == input("stay the night or refuse?") 
     if choose == "refuse": 
       print("man: ' boy, you are stubborn!") 
       print("the man walks away, leaving you behind" + " In the end, you got eaten by the wolves due to your stubborness. THE END") 

       choice == input("do you want to play again? yes or no?") 
       if choice == "yes": 
        game() 
       if choice == "no": 
        print("ok then, bye!") 
        break 
     else: 
       #continue your game here 

Hope this funktioniert! Das könnte besser sein.

+0

Im Allgemeinen sind Antworten viel hilfreicher, wenn sie eine Erklärung enthalten, was der Code beabsichtigt ist tun, und warum das das Problem löst, ohne andere einzuführen. –

0

Fragen:

  1. choice == input() ist falsch machen es choice = input()
  2. choice 'no' : wieder in vielen Ort ist falsch machen es choice == 'no'
  3. start/exit nicht
  4. print() Funktion Klammer haben muss Schließen erforderlich ist

Code festgelegt:

import time 
def my_game(): 
    print("hello, do you want to play this detective game?") 
    choice = input("Yes or no?") 
    if choice == 'no' : 
     print("ok then, bye") 

    if choice == 'yes': 
     name = input("Enter your name") 
     print("hello, " + name + ", in this game you are a famous detective handling a theft case.") 
     time.sleep(1) 
     print(" you have gone on a holiday but ended up lost in the forest. you see a man walking up to you") 
     time.sleep(1) 
     print ("man:' hi there! you seem quite lost! Do you want to stay the night with me?'") 
     print(" you said:'why should i? i dont even know you'") 
     print(" man : ' Do as you please, but if you stay in the forest for the night here's a friendly warning: there's wild wolves in the forests.'") 
     choose = input("stay the night or refuse?") 
     if choose == "refuse": 
      print("man: ' boy, you are stubborn!") 
      print("the man walks away, leaving you behind" + " In the end, you got eaten by the wolves due to your stubborness. THE END") 
      choice = input("do you want to play again? yes or no?") 
      if choice == "yes": 
       my_game() 

      if choice == "no": 
       print("ok then, bye!") 


if __name__ == "__main__": 
    my_game()