Я отримую помилку при виконанні цієї частини коду. спробував деякі з існуючих рішень, жодне з них не допомогло
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
Синтаксична помилка SyntaxError: unexpected EOF while parsing
означає, що кінець вихідного коду був досягнутий до того, як були завершені всі блоки коду. Блок коду починається з оператора типу for i in range(100):
і вимагає після себе як мінімум один рядок, що містить код, який повинен бути в ньому.
Складається враження, що ви виконували свою програму рядок за рядком в консолі ipython. Це працює для одиночних операторів, таких як a = 3
, але не для блоків коду, таких як цикли. Подивіться наступний приклад:
In [1]: for i in range(100):
File "<ipython-input-1-ece1e5c2587f>", line 1
for i in range(100):
^
SyntaxError: unexpected EOF while parsing
Щоб уникнути цієї помилки, ви повинні вводити весь блок коду як єдиний вхід:
In [2]: for i in range(5):
...: print(i, end=', ')
0, 1, 2, 3, 4,
Моя синтаксична помилка була напівприхована в f-рядку
print(f'num_flex_rows = {self.}\nFlex Rows = {flex_rows}\nMax elements = {max_elements}')
має бути
print(f'num_flex_rows = {self.num_rows}\nFlex Rows = {flex_rows}\nMax elements = {max_elements}')
У ньому не було червоного рядка перевірки правопису PyCharm під помилкою.
Це дало мені підказку, але коли я шукав це повідомлення про помилку, воно, звичайно, не знайшло помилку в цьому фрагменті коду вище.
Якби я уважніше подивився на повідомлення про помилку, я б знайшов у ньому рядок '
себе).
нічого не дав. Пошук
себе.
дали практично все :-.
Якщо я зможу допомогти вам уникнути хоча б на хвилину довше дескрипції вашого коду, то місія виконана :-)
C:\Python\Anaconda3\python.exe
C:/Python/PycharmProjects/FlexForms/FlexForm.py Файл "
рядок 1 (self.); > (self.)**; > ^ Синтаксис рядка ^ Синтаксична помилка: неочікувана EOF при розборі Процес завершено з виходом з програми; Процес завершено з кодом виходу 1
Ось одна з моїх помилок, яка призвела до цього виключення: У мене був блок try
без будь-яких блоків except
або finally
. Це не спрацює:
`py
спробувати:
let_do_something_beneficial()
Щоб виправити це, додайте блок `except` або `finally`:
```py
спробувати:
let_do_something_beneficial()
нарешті:
давай_підемо_спати()