SyntaxError: неочакван EOF при парсиране
Получавам грешка, докато изпълнявам тази част от кода. опитах някои от съществуващите решения, но нито едно от тях не помогна
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']))'
Винаги получавам тази грешка
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
Съобщението
SyntaxError: unexpected EOF while parsing
означава, че краят на изходния код е достигнат, преди да бъдат завършени всички блокове код. Блокът от код започва с изявление катоfor i in range(100):
и изисква поне един ред след това, който съдържа кода, който трябва да бъде в него.Изглежда, че сте изпълнявали програмата си ред по ред в конзолата на ipython. Това работи за единични изречения като
a = 3
, но не и за блокове от код като for цикли. Вижте следния пример:За да избегнете тази грешка, трябва да въведете целия блок от код като единичен вход:
Грешката ми в синтаксиса беше полускрита в символен низ f
трябва да бъде
Не е имало червения ред за проверка на правописа на PyCharm под грешката.
Той ми даде подсказка, но когато потърсих по това съобщение за грешка, то, разбира се, не намери грешката в тази част от кода по-горе.
Ако бях погледнал по-внимателно съобщението за грешка, щях да открия '' в грешката. Виждането на ред 1 беше обезкуражаващо и по този начин не бях обърнал голямо внимание :-( Търсенето на
не доведе до нищо. Търсене за
даде практически всичко :-\
Ако успея да ви помогна да избегнете дори минута по-дълъг deskchecking на вашия код, тогава мисията е изпълнена :-)
Ето една от моите грешки, която доведе до това изключение: Имах блок
try
без никакви блоковеexcept
илиfinally
. Това няма да работи:За да поправите това, добавете блок
except
илиfinally
: