python-3.x 语法错误:解析时出现意外的EOF

r3i60tvu  于 2022-11-19  发布在  Python
关注(0)|答案(9)|浏览(203)

我在运行这部分代码时遇到错误。我尝试了一些现有的解决方案,但没有一个有用。

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
dtcbnfnu

dtcbnfnu1#

SyntaxError: unexpected EOF while parsing表示在所有代码块完成之前到达了源代码的结尾。代码块以for i in range(100):这样的语句开头,并且后面至少需要一行包含应该在其中的代码。
看起来像是在ipython控制台中逐行执行程序。这适用于a = 3这样的单个语句,但不适用于for循环这样的代码块。请参见以下示例:

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,
ssm49v7z

ssm49v7z2#

这也可能意味着您缺少括号或括号太多。例如,括号太多,将导致意外的EOF

print(9, not (a==7 and b==6)
0g0grzrc

0g0grzrc3#

我的语法错误半隐藏在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拼写检查红线。
它确实给予了我一个线索,然而当我搜索这个错误消息时,它当然没有在上面的那段代码中找到错误。
如果我更仔细地查看错误信息,我会发现错误中的“”。看到第1行令人沮丧,因此没有密切关注:-(搜索
自我)。
没有产生任何结果。搜索
自我。
实际上产生了所有内容:-
如果我能帮助你避免哪怕一分钟的 * 桌面检查 * 你的代码,那么使命就完成了:-)
文件FlexForm.py“",第1行(自定义)^语法错误:解析时出现意外的EOF
进程结束,退出代码为1

vptzau2j

vptzau2j4#

下面是我的一个错误,它导致了这个异常:我有一个try块,但没有任何exceptfinally块。这将不起作用:

try:
    lets_do_something_beneficial()

要解决此问题,请添加exceptfinally块:

try:
    lets_do_something_beneficial()
finally:
    lets_go_to_sleep()
kqlmhetl

kqlmhetl5#

有一些情况会导致这个问题,如果它在代码中间发生它会出现“IndentationError:应为缩进块””或““SyntaxError:无效语法”,如果它在最后一行,则可能是“SyntaxError:解析”“时出现意外的EOF:
缺少“if”、“while“和“for”语句体--〉

root@nest:~/workplace# cat test.py
l = [1,2,3]
for i in l:
root@nest:~/workplace# python3 test.py
  File "test.py", line 3

               ^
SyntaxError: unexpected EOF while parsing

未闭合的圆括号(特别是在复杂的嵌套状态中)--〉

root@nest:~/workplace# cat test.py
l = [1,2,3]
print( l
root@nest:~/workplace# python3 test.py
  File "test.py", line 3

            ^
SyntaxError: unexpected EOF while parsing
x7rlezfr

x7rlezfr6#

我在尝试eval空字符串时遇到此错误。例如:

query = eval(req.body)

我用json.loads()代替,错误消失了。

b0zn9rqh

b0zn9rqh7#

elec_and_weather['DEMAND_t-%i'% k] = np.zeros(len(elec_and_weather['DEMAND']))'
错误出现在带有(')符号的行尾;这个错误总是意味着你有一个语法错误。

8ftvxx2r

8ftvxx2r8#

有时是因为忘记在try/except语句中添加Except。

hfyxw5xn

hfyxw5xn9#

我得到了下面相同的错误:
语法错误:解析时出现意外的EOF
当我忘记了一个尾随括号时,如下所示:

print("Hello"
             ↑
           Here

所以,我在后面加上一个括号,如下所示:

print("Hello")
             ↑
           Here

然后,错误被解决了:

Hello

相关问题