【问题标题】:Python Newbie error creating BlockPython新手错误创建块
【发布时间】:2018-03-12 20:28:47
【问题描述】:

我正在阅读 Python 教程,其中介绍了如何创建代码块。

这是教程代码:

name = "Doug"
if name == 'Doug':
  print "Hello, D-man!"
print "How are you today?

当我尝试在 Python IDLE 中做同样的事情时:

>>> if name == "Doug":
    print "Hello, D-man!"
print "How are you today?"

IDLE 给了我一个例外:

SyntaxError: 无效语法。

我在网上阅读了有关缩进的信息,但我无法弄清楚。 我知道这是一个基本的问题请求,但请帮忙,因为我还是个新手。

【问题讨论】:

  • 在shell中,你需要在缩进的块之后多留一个空行——否则它不知道你什么时候完成了块。这在普通脚本中不会发生。
  • 这将有助于逐字发布整个空闲会话。您似乎正在使用一个非常古老的 python 2 教程(打印语句放弃了它)。在 python3 中,print 现在是一个函数:print("Hello, D-man!")。如果您使用的是 python 3 中的idle,是的,这是一个语法错误。你真的确实想使用 python 3,所以找一个更新的教程!
  • 请在下面找到空闲会话。 Python 2.7.10(默认,2017 年 7 月 15 日,17:16:57)[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)] on darwin 键入“copyright”、“credits”或“license( )“ 了解更多信息。 >>> 警告:使用的 Tcl/Tk (8.5.9) 版本可能不稳定。访问python.org/download/mac/tcltk 了解最新信息。 >>> name = "Doug" >>> if name == "Doug": print"Hello, D-man!"打印“你今天好吗?” SyntaxError: 无效语法 >>>
  • 是的,我正在使用 2,但如果有人有 3.0 教程我可以开始使用它,那就太好了。

标签: python python-2.7 loops python-idle


【解决方案1】:

问题在于,在 shell 中,您必须分别执行每个块。如果你想让它在 shell 中工作,你必须这样做:

>>> if name == "Doug":
        print "Hello, D-man!"

然后:

>>> print "How are you today?"

虽然我建议从 IDLE 的文件菜单中选择 New File,这应该会打开一个名为 untitled.py 的新空白窗口。在这里,您实际上可以编写代码,使其工作如下:

name = "Doug"
if name == 'Doug':
  print "Hello, D-man!"
print "How are you today?

当您想要运行它时,只需将其保存到您的计算机,然后转到下拉菜单运行并选择 运行模块 或使用快捷键 F5,然后该文件应在 Shell 中运行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-13
    • 1970-01-01
    • 2012-10-18
    • 2011-07-07
    • 2015-11-20
    • 2018-04-27
    • 1970-01-01
    • 2015-03-13
    相关资源
    最近更新 更多