Es saņemu kļūdu, kad palaidu šo koda daļu. mēģināju dažus no esošajiem risinājumiem, bet neviens no tiem nepalīdzēja.
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']))'
Es vienmēr saņemu šo kļūdu
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
nozīmē, ka jūsu avota koda beigas tika sasniegtas pirms visi koda bloki tika pabeigti. Koda bloks sākas ar paziņojumu, piemēram, for i in range(100):
, un pēc tā ir nepieciešama vismaz viena rinda, kas satur kodu, kuram tajā jābūt.
Izskatās, ka ipython konsoles logā jūs izpildījāt savu programmu rindu pēc rindas. Tas darbojas ar atsevišķiem paziņojumiem, piemēram, a = 3
, bet ne ar kodu blokiem, piemēram, for cilpām. Skatiet šādu piemēru:
In [1]: for i in range(100):
File "<ipython-input-1-ece1e5c2587f>", line 1
for i in range(100):
^
SyntaxError: unexpected EOF while parsing
Lai izvairītos no šīs kļūdas, viss koda bloks ir jāievada kā viens ievads:
In [2]: for i in range(5):
...: print(i, end=', ')
0, 1, 2, 3, 4,
Mana sintakses kļūda bija daļēji paslēpta f virknē
print(f'num_flex_rows = {self.}\nFlex Rows = {flex_rows}\nMax elements = {max_elements}')
vajadzētu būt
print(f'num_flex_rows = {self.num_rows}\nFlex Rows = {flex_rows}\nMax elements = {max_elements}')
Tā nebija rakstības pārbaudes PyCharm sarkanā līnija zem kļūdas.
Tas man deva pavedienu, tomēr, kad es meklēju pēc šī kļūdas ziņojuma, tas, protams, neatrada kļūdu šajā iepriekš minētajā koda daļā.
Ja es kļūdas ziņojumu būtu aplūkojis rūpīgāk, es kļūdā būtu atradis '
self.)
neko nedeva. Meklēšana
self.
deva praktiski visu :-\
Ja es varu jums palīdzēt izvairīties no kaut par minūti ilgākas deskchecking jūsu koda pārbaudes, tad misija ir izpildīta :-)
C:\Python\Anaconda3\python.exe C:/Python/PycharmProjects/FlexForms/FlexForm.py Failu "
", 1. rinda (self.) ^ SyntaxError: negaidīts EOF, kamēr analizē Process pabeigts ar izejas kodu 1
Šeit ir viena no manām kļūdām, kas radīja šo izņēmumu: Man bija try
bloks bez except
vai finally
blokiem. Tas nedarbosies:
try:
lai_darītu_neko labu()
Lai to novērstu, pievienojiet except
vai finally
bloku:
try:
lems_do_something_beneficial()
beidzot:
lets_go_to_sleep()