E0001:invalid syntax obwohl alles richtig ist

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Bumblebee38
User
Beiträge: 15
Registriert: Mittwoch 23. Mai 2018, 20:26

Ich programmiere zurzeit einen Bot für Discord. Jedoch wird mir angezeigt, dass ich einen Syntaxfehler hätte, obwohl dort alles korrekt geschrieben wurde. Was muss ich machen, damit der angebliche Syntaxfehler verschwindet?

Code: Alles auswählen

import discord
from discord.ext.commands import Bot
from discord.ext import commands
import asyncio
import time


Client = discord.Client() #Initialise Client 
client = commands.Bot(command_prefix = "?") #Initialise client bot


@client.event
async def on_ready():
    print('Logged in as')
    print(client.user.name)
    print(client.user.id)
    print('------') #Log-In / Begrüßungs-Nachricht

@client.event
async def on_message(message):
    if message.author == client.user:
        return

    if message.content.startswith('!test'):
        await client.send_message(message.channel, "Ja! Es funktioniert!")
    elif message.content.startswith('cookie'):
        await client.send_message(message.channel, ":cookie:")
    elif message.content.startswith('Montag'): #Zeigt Hausaufgaben für Montag an
        await client.send_message(message.channel, "In Englisch haben wir " + Englisch + " auf. ")
    await client.send_message(message.channel, "In Mathe Informatik haben wir " 
        + Mathe_Informatik + " auf. ")
    await client.send_message(message.channel, "In Physik Info haben wir " + Physik_Informatik + "auf. ")
    await client.send_message(message.channel, "In Sporthelfer haben wir " + Sporthelfer + "auf. ")
    await client.send_message(message.channel, "In Business Englisch haben wir " + Business_Englisch + "auf.")
    await client.send_message(message.channel, "In Deutsch haben wir " + Deutsch + "auf. ")
    await client.send_message(message.channel, "In Geschichte haben wir " + Geschichte + "auf. "

    elif message.content.startswith('Dienstag'): #Zeigt Hausaufgaben für Dienstag an
        await client.send_message(message.channel, "In Latein haben wir " + Latein + "auf. ")
    await client.send_message(message.channel, "In Französisich haben wir " + Französisch + "auf. ")
    await client.send_message(message.channel, "In Biologie haben wir " + Biologie + "auf. ")
    await client.send_message(message.channel, "In Politik haben wir " + Politik + "auf. ")
    await client.send_message(message.channel, "In Mathe haben wir " + Mathe + "auf.")

    elif message.content.startswith('Mittwoch'):
    await client.send_message(message.channel, "In Physik haben wir " + Physik + "auf. ")
    await client.send_message(message.channel, "In Mathe Informatik haben wir " 
        + Mathe_Informatik + " auf. ")
    await client.send_message(message.channel, "In Physik Info haben wir " + Physik_Informatik + "auf. ")
    await client.send_message(message.channel, "In Sporthelfer haben wir " + Sporthelfer + "auf. ")
    await client.send_message(message.channel, "In Business Englisch haben wir " + Business_Englisch + "auf.")
    await client.send_message(message.channel, "In Politik haben wir " + Politik + "auf.")
    await client.send_message(message.channel, "In Mathe haben wir " + Mathe + "auf.")
    await client.send_message(message.channel, "In Praktischer Philosophie haben wir " + Praktische_Philosophie + "auf. ")
    await client.send_message(message.channel, "In Evangelischer Religion haben wir " + Evangelische_Religion + "auf. ")
    await client.send_message(message.channel, "In Katholischer Religion haben wir " + Katholische_Religion + "auf. ")

    elif message.content.startswith('Donnerstag'):
    await client.send_message(message.channel, "In Chemie haben wir " + Chemie + "auf. ")
    await client.send_message(message.channel, "In Mathe haben wir " + Mathe + "auf. ")
    await client.send_message(message.channel, "In Englisch haben wir " + Englisch + "auf. ")
    await client.send_message(message.channel, "In Physik haben wir " + Physik + "auf. ")

    elif message.content.startswith('Freitag'):
    await client.send_message(message.channel, "In Erdkunde haben wir " + Erdkunde + "auf. ")
    await client.send_message(message.channel, "In Deutsch haben wir " + Deutsch + "auf. ")
    await client.send_message(message.channel, "In Latein haben wir " + Latein + "auf. ")
    await client.send_message(message.channel, "In Französisich haben wir " + Französisch + "auf. ")
    
      

Englisch = "nichts"
Deutsch = "nichts"
Latein = "nichts"
Französisch = "nichts"
Biologie = "nichts"
Politik = "nichts"
Mathe = "nichts"
Physik = "nichts"
Chemie = "Arbeitsblatt"
Erdkunde = "nichts"
Geschichte = "Buch S. 20"
Praktische_Philosophie = "nichts"
Evangelische_Religion = "nichts"
Katholische_Religion = "nichts"
Physik_Informatik = "nichts"
Mathe_Informatik = "nichts"
Sporthelfer = "Sport machen"
Business_Englisch = "nichts"


client.run("token") #Replace token with your bots token



Fehlermeldung: E0001:invalid syntax (<unknown>, line 38)
Sirius3
User
Beiträge: 17712
Registriert: Sonntag 21. Oktober 2012, 17:20

Einrückungen sind in Python wichtig.
Jeden Tag und jedes Fach einzeln auszuprogrammieren, skaliert nicht wirklich gut. Beschäftige Dich mal mit Datenstrukturen.
__deets__
User
Beiträge: 14494
Registriert: Mittwoch 14. Oktober 2015, 14:29

Bitte die gesamte Fehlermeldung zeigen, denn hier von Hand 38 Zeilen abzuzählen ist etwas mühselig.

Und permanent zu behaupten alles ist richtig, wenn du Fehler bekommst, ist ein bisschen seltsam. Es ist offensichtlich NICHT alles richtig. Du verstehst nur nicht warum. Python ist nicht perfekt, und Fehler beim programmieren können verdammt vertrackt sein. Aber es ist nahezu immer ein Problem des Programmierers. Nicht der Tools.
Bumblebee38
User
Beiträge: 15
Registriert: Mittwoch 23. Mai 2018, 20:26

Der Syntaxfehler wird mir hier angezeigt.

Code: Alles auswählen

elif message.content.startswith('Dienstag'): #Zeigt Hausaufgaben für Dienstag an
Hier nochmal als Bild.

http://prntscr.com/ky8thd
Bumblebee38
User
Beiträge: 15
Registriert: Mittwoch 23. Mai 2018, 20:26

Code: Alles auswählen

File "d:/Kubilay/Python/DiscordBot/DiscordBot9C.py", line 38
    elif message.content.startswith('Dienstag'): #Zeigt Hausaufgaben für Dienstag an
       ^
Und hier in der Terminal Ausgabe.
__deets__
User
Beiträge: 14494
Registriert: Mittwoch 14. Oktober 2015, 14:29

Die awaits davor müssen auch eingerückt sein. Weißt du, wofür Einrückungen wichtig sind in Python?
Benutzeravatar
kbr
User
Beiträge: 1487
Registriert: Mittwoch 15. Oktober 2008, 09:27

Bumblebee38 hat geschrieben: Montag 24. September 2018, 21:23 Hier nochmal als Bild.
Klar, da fehlt eine Klammer in Zeile 36.
Ergo: Syntaxfehler.
Antworten