SyntaxError: unerwartetes EOF beim Parsen
Ich erhalte einen Fehler, wenn ich diesen Teil des Codes ausführe. Ich habe einige der vorhandenen Lösungen ausprobiert, aber keine von ihnen hat geholfen
elec_and_weather = pd.read_csv(r'C:\HOUR.csv', parse_dates=True,index_col=0)
# Add historic DEMAND to each X vector
for i in range(0,24):
elec_and_weather[i] = np.zeros(len(elec_and_weather['DEMAND']))
elec_and_weather[i][elec_and_weather.index.hour==i] = 1
# Set number of hours prediction is in advance
n_hours_advance = 24
# Set number of historic hours used
n_hours_window = 24
for k in range(n_hours_advance,n_hours_advance+n_hours_window):
elec_and_weather['DEMAND_t-%i'% k] = np.zeros(len(elec_and_weather['DEMAND']))'
Ich erhalte immer diesen Fehler
for i in range(0,24):
File "<ipython-input-29-db3022a769d1>", line 1
for i in range(0,24):
^
SyntaxError: unexpected EOF while parsing
File "<ipython-input-25-df0a44131c36>", line 1
for k in range(n_hours_advance,n_hours_advance+n_hours_window):
^
SyntaxError: unexpected EOF while parsing
21
3
Der
SyntaxError: unexpected EOF while parsing
bedeutet, dass das Ende Ihres Quellcodes erreicht wurde, bevor alle Codeblöcke abgeschlossen waren. Ein Codeblock beginnt mit einer Anweisung wiefor i in range(100):
und benötigt danach mindestens eine Zeile, die Code enthält, der darin enthalten sein sollte.Es scheint, als ob du dein Programm Zeile für Zeile in der ipython-Konsole ausführst. Das funktioniert für einzelne Anweisungen wie
a = 3
, aber nicht für Codeblöcke wie for-Schleifen. Siehe das folgende Beispiel:Um diesen Fehler zu vermeiden, müssen Sie den gesamten Codeblock als eine einzige Eingabe eingeben:
Mein Syntaxfehler war halb versteckt in einer f-Zeichenkette
sollte sein
Die rote PyCharm-Rechtschreibprüfung-Zeile unter dem Fehler fehlte.
Es gab mir zwar einen Hinweis, aber als ich nach dieser Fehlermeldung suchte, fand es natürlich nicht den Fehler in dem obigen Codeabschnitt.
Hätte ich mir die Fehlermeldung genauer angesehen, hätte ich den 'fstring>' im Fehler gefunden. Der Anblick von Zeile 1 war entmutigend und deshalb habe ich nicht so genau hingesehen :-( Bei der Suche nach
erbrachte nichts. Die Suche nach
erbrachte praktisch alles :-\
Wenn ich Ihnen helfen kann, auch nur eine Minute längeres Deskchecking Ihres Codes zu vermeiden, dann ist die Mission erfüllt :-)
C:\Python\Anaconda3\python.exe
Hier ist einer meiner Fehler, der zu dieser Ausnahme führte: Ich hatte einen
try
-Block ohne irgendwelcheexcept
- oderfinally
-Blöcke. Das wird nicht funktionieren:``py try: lets_do_something_beneficial()