【问题标题】:Applications not related to python output weird error message: SyntaxError: invalid syntax与 python 无关的应用程序输出奇怪的错误消息:SyntaxError: invalid syntax
【发布时间】:2018-06-28 12:51:54
【问题描述】:

大家好,阅读此消息,

由于我在桌面上设置了 PYTHONPATH,每当我尝试使用我认为与 python 无关的 gdb 或 yum 之类的命令时,我都会遇到这个“SyntaxError:无效语法”。我已经尝试了几件事来调试 shell 提示符,以弄清楚到底发生了什么,但到目前为止我一直遇到这个问题。

我是这样的:

[charly@sn04 ~]$ gdb
  File "/opt/anaconda3/lib/python3.5/site.py", line 176
    file=sys.stderr)
        ^
SyntaxError: invalid syntax

这似乎与 PYTHONPATH 有关。当我取消设置时,一切正常。

我的 Python 路径:

export PYTHONPATH=/opt/anaconda3/lib/python3.5/

我试过用-x和-v调试shell,但是调试信息没有帮助:

[charly@sn04 ~]$ gdb
gdb
+ gdb
  File "/opt/anaconda3/lib/python3.5/site.py", line 176
    file=sys.stderr)
        ^
SyntaxError: invalid syntax

我也试过设置陷阱:

trap "PARENT_COMMAND=\"$(ps -o comm= $PPID)\"" ERR
[charly@sn04 ~]$ gdb
gdb
+ gdb
  File "/opt/anaconda3/lib/python3.5/site.py", line 176
    file=sys.stderr)
        ^
SyntaxError: invalid syntax
PARENT_COMMAND="xterm"
++ PARENT_COMMAND=xterm

,看看是哪个进程调用了这个错误,但到目前为止我无法弄清楚如何解决这个问题。

提前感谢您提供任何线索或提示。

【问题讨论】:

    标签: python shell syntax-error prompt pythonpath


    【解决方案1】:

    检查gdb使用的是什么版本的python(gdb使用Python编写脚本)

    $ (which gdb) | grep python
    

    $ which gdb | xargs grep -a python
    

    如果 gdb 使用的版本与当前 PYTHONPATH 中的版本不同,那么您应该将 Python 路径更改为 gdb 支持的版本或re-build gdb

    另见:

    gdb uses wrong pythonAttributeError: 'module' object has no attribute 'pydebug'How to change the Python Interpreter that gdb uses?

    【讨论】:

    • 感谢您的回答!我最好先检查一下这些命令是否在内部称为 python。我想不出 gdb 这样做的原因,但无论如何它确实如此。为了补充您的答案,我将重新编写这样的命令:which gdb | xargs grep -a python
    • @Dyrl 我将此添加到我的答案中。但它有助于解决问题吗?
    • 是的,但解决方案是从我的 .bashrc 中完全删除 PYTHONPATH,因为它指向 python3.5 和 gdb python2.7。我将在我正在开发的应用程序中设置它,所以系统工具不会受到影响。
    【解决方案2】:
    export PYTHONPATH=
    

    解决了我的问题(Git Bash,Windows 10)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-10
      • 2021-07-19
      • 2011-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-27
      • 2022-08-17
      相关资源
      最近更新 更多