如何在 while 循环后打印

How to print after a while loop

我安装了 Python 3.8(32 位),我正在使用 Atom 编写我的尝试,然后将它们复制粘贴到 Python 终端。

以下代码直接从我正在学习的 Python 入门课程的开头复制 "for fun":

n = 5
while n > 0:
  print(n)
  n=n-1
print('Blastoff!')

该代码适用于我能找到的每个沙箱,最后一行在我的终端中独立运行。但是当我将它复制到我的终端时,我得到一个指向单词 print 的无效语法错误。我可以通过将代码更改为:

来解决此问题并获得所需的输出
n = 5
while n > 0:
  print(n)
  n=n-1
else:
    print('Blastoff!')

但是我有三个问题:

  1. 为什么我的原始代码不能运行,因为它是直接从课程中复制的?
  2. 在将第二个代码块复制到 运行 后,我需要按 Enter 两次 。这是为什么?
  3. 为什么 Atom 坚持让最后一个 print 比我的其他缩进更远?

这是我输入第一个代码块时看到的内容:

>>> n = 5
>>> while n > 0:
...     print(n)
...     n=n-1
... print('Blastoff!')
  File "<stdin>", line 4
    print('Blastoff!')
    ^
SyntaxError: invalid syntax

由于您将代码输入 Python 解释器,它会逐行解释代码。这非常适合快速测试和检查,但对于较大的代码,您需要 运行 整个文件。

您可以通过几种不同的方式实现此目的:

  1. 运行 它来自命令 prompt/terminal。如果您的 Python 可执行文件在您的 PATH 中,您可以打开命令提示符并导航到您的文件和 运行 python myfile.py。参见“How to add Python to Windows PATH”。
  2. 如果您从 python.org 安装了 Python,您可能安装了 IDLE。您可以 运行 IDLE 应用程序并从菜单 File > Open 打开您的文件。从那里,您可以 运行 菜单中的文件 Run > Run Module

我建议您选择第二个选项,因为您正在学习,它将帮助您专注于编码而不是与您的代码环境作斗争。但是,请随时重新访问选项 #1。了解命令行方式绝对有帮助(如果您在未安装 IDLE 的机器上工作,这将是 运行 Python 文件的正确方式)。

此外,“How to Run Your Python Scripts”是一个很好的资源,可以帮助您详细了解 运行ning 脚本在 Python 中的工作原理。