gpt4 book ai didi

python - python函数中不允许空行?

转载 作者:行者123 更新时间:2023-11-28 21:03:00 29 4
gpt4 key购买 nike

(A) 这行得通:

def func():
x = 1
print(x)
return

(B) 这行不通:

def func():
x = 1

print(x)
return

(C) 这也行不通:(这里我使用'_'来表示空格)

def func():
x = 1
____
print(x)
return

(D) 这行得通:

def func():
x = 1
____# some comment
print(x)
return

在 (B) 和 (C) 中我都得到以下错误:

  • NameError: 名称 'x' 未定义
  • SyntaxError: 'return' outside function

我正在使用 Eclipse 和 PyDev 插件。 Python 版本为 3.5,PyDev 版本为 4.5。

------------更新------------

  1. 该问题无法在 Jupyter Notebook 和 PyCharm 中重现。

  2. 在 Eclipse 中,我打开了“显示空白字符”。 (C) 中的缩进确实由 4 个空格组成,在编辑器中显示为 4 个点。如果它是一个选项卡,在 Eclipse 编辑器中它将显示为“>>”。

根据我的调查和下面的评论/答案,我很确定这是 Eclipse 和/或 PyDev 的一个愚蠢错误。

谢谢大家的帮助。

最佳答案

注意制表符和空格,它们不一样,所以:

(_ 是带空格的)

def func():
____x = 1
____
____print(x)
____return

它会工作得很好

不一样

(+ 是制表符,_ 空格)

def func():
++x = 1
__
++print(x)
++return

不会工作

关于python - python函数中不允许空行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47141264/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com