【发布时间】:2018-12-06 22:18:54
【问题描述】:
我正在尝试在 Python REPL 上定义一个函数。每次我尝试运行以下代码时,都会出现语法错误。
代码:
def hello():
print ("Hello!")
hello()
错误:
C:\Users\~\Desktop>python
Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 16:07:46) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> def hello():
... print ("Hello!")
... hello()
File "<stdin>", line 3
hello()
^
SyntaxError: invalid syntax
我在 stackoverflow 上遇到的一个可能的解释是这篇文章 Python Error : File "<stdin>",它说我无法从 Python 解释器运行脚本。如果这是真的,为什么会这样? IE。如果我能够在 cmd 窗口中运行 >>>2+2,为什么我无法运行“def”函数?希望在这一点上寻求澄清 - 谢谢!
编辑:将错误放在文本中,而不仅仅是图片。
【问题讨论】:
-
在您的图片中,当您尝试调用它时,您仍在定义
hello函数... -
另外,避免发布代码图片
-
您最好将错误以文本形式发布。外部托管的图像可能会变得不可用,因此未来的 SO 用户可能会不清楚您的问题。
-
在函数定义和调用函数之间留一条线。我不确定它为什么需要它,但它确实需要。
-
原因是这样的:Python解释器无法预知你接下来要输入什么以及下一行是否缩进,所以它需要一些东西来告诉你缩进的块已经结束,这是一个空线;在 Python 脚本中,不需要这样的空行,因为下一行是否是预定的......
标签: python python-3.x cmd windows-10 syntax-error