【问题标题】:Komodo Edit Changes Python sys.path If you "Show in Explorer"Komodo 编辑更改 Python sys.path 如果您“在资源管理器中显示”
【发布时间】:2009-07-10 05:31:35
【问题描述】:

我正在使用Komodo Edit,一个代码编辑器。

当我右键单击项目并单击“在资源管理器中显示”时,它会在我的项目所在的目录中弹出一个类似于 Windows 资源管理器的框。这很方便。

但是,我注意到一个隐蔽的副作用。当你尝试使用这个看起来与 Windows 资源管理器一模一样的窗口运行 python 文件时,你会发现它完全弄乱了 Python 中的 sys.path 以使用自己的目录。

有什么办法可以避免吗?

import sys
sys.path

C:\Windows\system32\python26.zip
C:\Program Files\ActiveState Komodo Edit 5\lib\python\DLLs
C:\Program Files\ActiveState Komodo Edit 5\lib\python\lib
C:\Program Files\ActiveState Komodo Edit 5\lib\python\lib\plat-win
C:\Program Files\ActiveState Komodo Edit 5\lib\python\lib\lib-tk
C:\Python26
C:\Program Files\ActiveState Komodo Edit 5\lib\python
C:\Program Files\ActiveState Komodo Edit 5\lib\python\lib\site-packages
C:\Program Files\ActiveState Komodo Edit 5\lib\python\lib\site-packages\win32
C:\Program Files\ActiveState Komodo Edit 5\lib\python\lib\site-packages\win32\lib
C:\Program Files\ActiveState Komodo Edit 5\lib\python\lib\site-packages\Pythonwin

【问题讨论】:

    标签: python path module komodo komodoedit


    【解决方案1】:

    这确实是 Komodo 的一个问题。它实际上源于 Komodo 生成的 Explorer 窗口,它设置了 PYTHONHOME 环境变量以包含 Komodo 的路径,因为子进程继承了父进程的环境。我通过 Komodo 生成的资源管理器打开命令提示符窗口注意到了这一点。如果您查看set 的输出,它包含(除其他外)以下内容:

    PYTHONHOME=C:\Program Files\ActiveState Komodo Edit 5\lib\python
    _KOMODO_HOSTUSERDATADIR=C:\Users\Dev\AppData\Roaming\ActiveState\KomodoEdit\5.1\host-host\
    _KOMODO_VERUSERDATADIR=C:\Users\Dev\AppData\Roaming\ActiveState\KomodoEdit\5.1\
    _XRE_USERAPPDATADIR=C:\Users\Dev\AppData\Roaming\ActiveState\KomodoEdit\5.1\host-host\XRE
    

    我报告了这个错误here at the ActiveState bug tracker

    【讨论】:

    • 很高兴知道这不是“功能”,也没有简单的解决方法。
    【解决方案2】:

    哎呀!我在我的 Vista 机器上也有同样的行为。我没有看到该功能的任何设置,我认为这是一个 Komodo 错误。

    我想到了一个解决方法:在工具箱中创建一个新命令,使用“explorer %D”作为命令行。但它有同样的问题:-(

    更新:如果您将 %D 用于 StartIn,则解决方法有效。看截图:

    alt text http://img10.imageshack.us/img10/2972/komodoshowinexplorer.jpg

    【讨论】:

    • 尽管我不喜欢使用工具箱,但感谢您提出了一个技巧。我给了你一票。
    【解决方案3】:

    您的sys.path 应该是什么?看起来 Python 已经在路上了,但也许你还需要其他库。

    如果您缺少一些关键目录,请在您的 Python 模块之一中使用 sys.path.append。如果您需要移动 Python 解释器的目录(这可能是使相对路径名起作用所必需的),也请使用 os.chdir

    编辑:令我震惊的是,您可能已经知道这些功能,而问题出在其他地方。

    【讨论】:

      【解决方案4】:

      我建议进入 Komodo Edit 的 Preferences >> Environment,并将 PYTHONHOME 改回原来的 python 安装(例如 c:\python27)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-08-31
        • 1970-01-01
        • 2010-09-30
        • 1970-01-01
        • 1970-01-01
        • 2014-05-21
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多