【问题标题】:Sublime Text 3 and Python 3 - exception messagesSublime Text 3 和 Python 3 - 异常消息
【发布时间】:2013-10-23 15:49:54
【问题描述】:

我刚刚切换到 Sublime Text 3(实际上是从 ST 2 切换到的),并且在执行无效代码时收到了这个烦人的错误消息。说,我运行这段代码(这在 Python 3 中当然是无效的):

print 'this'

我从我的 Sublime 收到这个扩展的错误消息:

SyntaxError: invalid syntax
[Finished in 0.2s with exit code 1]
[shell_cmd: python -u "C:\Users\Myname\Desktop\working.py"]
[dir: C:\Users\Myname\Desktop]....CUT HERE...

因此,除了 Sublime 例外,它还打印了我拥有的所有环境变量路径。我猜这是异常行为?还是您在 Sublime Text 3 上也收到此类错误消息?

如果这有任何相关性,我同时安装了 Python27 和 Python 33,尽管只有 Python33 被放入变量路径中。

【问题讨论】:

  • 要清楚,您不是在问如何修复这个特定错误(或更一般地将 Python 2 代码移植到 Python 3),而是如何更改 ST 的异常输出?
  • 是的,这都是关于 ST 的,因为 ST 通常不会出现这样的错误。那里一定有问题。

标签: python-3.x sublimetext3


【解决方案1】:

安装Better Build System 包。将这些设置添加到您的用户首选项(首选项 -> 设置 - 用户):

"show_panel_on_failed_build_only": false,
"show_debug_text": false,
"show_panel_on_build": true

【讨论】:

    【解决方案2】:

    我花了太长时间才注意到您不是在谈论 Sublime 的插件界面(它使用 Python 3 的嵌入式副本),而是在谈论仅在 Python 解释器中找到的“构建”命令路径。

    回答您的问题 - 是的,每当我在 Python 中运行一些以非 0 退出代码退出的代码时,我都会收到此类消息。可能只是:

    import sys
    sys.exit(1)
    

    把它改成exit(0),输出就是:

    [Finished in 0.0s]
    

    所以看起来只是 Sublime 的构建工具试图提供帮助。

    【讨论】:

    • 酷,感谢您的帮助!对不起,如果我的开场白不够清楚。顺便提一句。你认为我可以在 Sublime 中自动化这个sys.exit(1) 部分,而不必每次都明确地输入这段代码吗?我不需要 Sublime 构建提供的这个扩展错误消息。
    【解决方案3】:

    根据本文档,https://docs.python.org/3.0/whatsnew/3.0.html#print-is-a-function 您需要包含像这样的括号 print ('this')

    【讨论】:

      猜你喜欢
      • 2019-03-15
      • 2014-09-17
      • 2015-05-07
      • 2016-02-07
      • 2014-05-01
      • 1970-01-01
      • 2023-03-06
      • 2015-02-04
      • 1970-01-01
      相关资源
      最近更新 更多