【问题标题】:My sys.path in IDLE does not match sys.path from terminal. Where can I globally modify the python path on Mac Big Sur?我在 IDLE 中的 sys.path 与终端的 sys.path 不匹配。在哪里可以全局修改 Mac Big Sur 上的 python 路径?
【发布时间】:2021-04-01 15:02:07
【问题描述】:

我正在尝试修改我的 python 路径。我通过使用 PYTHONPATH 而不是 PATH 变量成功地在 .bash_profile 中进行了修改,但是来自终端的 sys.path 与 IDLE 不匹配。两者的python版本相同,所以我不确定为什么路径不匹配。我在 IDLE 中尝试了这段代码:

>>> import sys
>>> print("\n".join(sys.path))

/Users/samantha.cruz/Documents
/Library/Frameworks/Python.framework/Versions/3.8/lib/python38.zip
/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8
/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/lib-dynload
/Users/samantha.cruz/Library/Python/3.8/lib/python/site-packages
/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages
>>> print(sys.version)
3.8.1 (v3.8.1:1b293b6006, Dec 18 2019, 14:08:53) 
[Clang 6.0 (clang-600.0.57)]
>>> sys.executable
'/Library/Frameworks/Python.framework/Versions/3.8/bin/python3.8'
>>> 

同样的代码在终端中得到如下结果:

(base) SamanthaCruz-MBPro:~ samantha.cruz$ python3
Python 3.8.1 (v3.8.1:1b293b6006, Dec 18 2019, 14:08:53) 
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print("\n".join(sys.path))

/Users/samantha.cruz/Documents/tftest/models/models/research
/Library/Frameworks/Python.framework/Versions/3.8/bin
/Applications/CMake.app/Contents/bin
/Library/Frameworks/Python.framework/Versions/2.7/bin
/Library/Frameworks/Python.framework/Versions/3.7/bin
/anaconda3/bin
/Users/samantha.cruz/anaconda3/bin
/Users/samantha.cruz/miniconda3/condabin
/usr/local/opt/gettext/bin
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/share/dotnet
/opt/X11/bin
/Users/samantha.cruz/~/.dotnet/tools
/Library/Apple/usr/bin
/Developer/Panda3D/bin
/Library/Frameworks/Mono.framework/Versions/Current/Commands
/Library/Frameworks/Python.framework/Versions/3.8/lib/python38.zip
/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8
/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/lib-dynload
/Users/samantha.cruz/Library/Python/3.8/lib/python/site-packages
/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages
>>> print(sys.version)
3.8.1 (v3.8.1:1b293b6006, Dec 18 2019, 14:08:53) 
[Clang 6.0 (clang-600.0.57)]
>>> sys.executable
'/Library/Frameworks/Python.framework/Versions/3.8/bin/python3'
>>> 

如何使它们具有相同的路径?如果这是不可能的,我如何全局修改 IDLE 的 sys.path(不仅仅是当前会话)?

【问题讨论】:

    标签: python-3.x sys pythonpath sys.path


    【解决方案1】:

    下载 anaconda 后,我的终端默认在虚拟环境中打开。修复很容易。只需在终端中输入以下命令:

    conda deactivate
    

    然后,路径将与 IDLE 的路径匹配,并且可以安装库以在 IDLE 中使用。

    【讨论】:

      猜你喜欢
      • 2016-03-23
      • 2014-06-06
      • 2017-11-27
      • 2015-10-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-10
      • 2013-06-17
      相关资源
      最近更新 更多