关于基本 Python 语法的简单问题

Simple Question about Basic Python Syntax

刚开始自学如何编码,但是我 运行 遇到了一些烦人的 Python 语法问题。每次我尝试将课本中的示例直接复制到 IDLE 中时,都会出现语法错误。即使在重新输入、尝试不同的缩进等等之后。我很抱歉这太基本了!上面的问题代码输入后有没有办法"recall"?谢谢!

>>> def f(x, y, z):
        return x + y + z
result = f(1, 2, 3)
print(result)

--OR-- 

def f(x, y, z):
        return x + y + z
result = f(1, 2, 3)
print(result)

我得到 "syntaxerror: invalid syntax"(在 'result' 行。)

预期答案是 6。

Python使用缩进来标识代码块。因此,请确保您的代码块有正确的缩进。

您正在将代码直接输入 IDLE 的交互式 window(a.k.a。REPL - read-execute-print 循环)window。

在此模式下,您键入的每条语句都会立即执行。这种模式的一个怪癖是 Python 在函数定义后需要一个额外的空行,这样它就知道函数定义完成了,它可以执行它。

因此,您的 IDLE 输入需要如下所示(包括 IDLE 的提示):

>>> def f(x, y, z):
        return x + y + z

>>> result = f(1, 2, 3)
>>> print(result)
6

或者,您可以像传统的 IDE 一样使用 IDLE,在文件中编写代码,执行文件,编辑文件,重复。

为此,转到 File -> New File,然后将所有代码键入弹出的 window。您可以使用 Run -> Run Module 执行代码,当然您可以按预期保存和加载此文件。