【问题标题】:Sublime text causing the print() statement to print brackets and quotation marks导致 print() 语句打印括号和引号的崇高文本
【发布时间】:2017-10-08 09:11:45
【问题描述】:

在我作为初学者的大部分编程中,我一直在使用一个名为 grok learning 的网站。在这个网站上,有一个 python 解释器(?)我不确定技术术语是什么,但你基本上可以在网站内运行带有一些模块的 python 程序。

今天我下载了 sublime text,因为 Grok Learning 上的空间没有我需要的那么大,而且我无法将程序保存到我的电脑上。

我将我的一些代码从 Grok 复制并粘贴到 sublime 文本中,但由于某种原因,我遇到了这个问题。

在 grok 中,这个程序:

world_age = random.randint(2, 5000)

print('The world is', world_age, 'years old.')

返回这个:

The world is 2500 years old.

但是,在崇高的文本中,我得到:

('The world is', 3068, 'years old.')

带括号和所有。我使用的是 python 3,而不是 2,所以我知道括号必须在那里。其他说明:

  • 我使用的是 mac OSX

  • 为了运行程序,我从 python.org for mac 下载了 python 3.6.3

  • 我将 sublime 文本文件以 .py 格式保存在我自己的文件夹中,要运行它,我右键单击该文件并选择使用 Python Launcher 打开。如果我选择使用“IDLE”打开,那么程序实际上并没有运行,程序只是在 python 中打开。

【问题讨论】:

  • Sublime text 正在 Python 2 中运行您的代码。或者更确切地说,无论 Python Launcher 是什么;您是在 Sublime 还是在 Finder 中单击鼠标右键?
  • 啊,我看到 OS X 安装程序包含一个 PythonLauncher 应用程序,它是可配置的:PythonLauncher 有各种首选项来控制脚本的启动方式。选项拖动允许您为一次调用更改这些,或使用其首选项菜单全局更改内容。。想必它目前默认配置为运行 Python 2.7。
  • 尝试打开 Python Launcher 应用程序(位于您的 Applications 文件夹中并查看其首选项窗格。它可能有一个选项来设置使用的 Python 二进制文件。
  • 谢谢Martijin,我想如果它在python 2 中运行,我为python 3 设计的程序根本无法运行,但我想它们并没有那么不同。
  • 对不起,我按了输入的意思下一行,但你能解释一下“选项拖动”是什么吗?我可用的选项是“文件类型设置”,当前设置为“Python 脚本”,其他选项是“Pyhton GUI 脚本”和“Python 字节码文档”以及“其他标志”和“命令行”一堆我不明白的东西。

标签: python macos sublimetext3


【解决方案1】:

这不是 Sublime 的错。您正在使用 Python Launcher 运行您的 Python 脚本,并且它被配置为运行 Python 2。您的代码恰好在 Python 2 下工作,但 print 语句被赋予了一个要打印的元组。

直接打开 Python 启动器 (use Spotlight to find it),您可以调整它用于运行脚本的 Python 二进制文件。当您启动它时,首选项窗格将自动打开。您可以将 interpreter 选项设置为 Python 3 解释器的路径。

【讨论】:

    猜你喜欢
    • 2013-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-09
    相关资源
    最近更新 更多