python - sys.path 不会自动包含当前工作目录
问题描述
我在 Win 10 上使用 python.org 安装程序。文档说,从命令行运行脚本时,第一项sys.path
将是脚本的路径。我总是这么看。这些文档并没有说第二项将是运行脚本的目录,但是在使用 Python 的多年中,我一直看到这种行为,其他人也提到了它。文档说这sys.path
是“从环境变量 PYTHONPATH 初始化的,加上依赖于安装的默认值”。我想明白这句话是什么意思。例如,如果 PYTHONPATH 为空(PowerShell: $env:PYTHONPATH = ""
),那么令我惊讶的是,第二项没有添加。Otoh,如果 PYTHONPATH 以分号 (PowerShell: $env:PYTHONPATH = ";"
) 开头,则添加第二项。
我想这一定是预期的行为?我在找我。确认这一假设,以及 ii。并解释我所看到的(如上一段末尾所述)。我的猜测是“;”的 PYTHONPATH 被认为以空字符串开头,这会导致包含工作目录。
解决方案
推荐阅读
- angular - 为什么在ngOnInit中调用函数会出错?
- angular - 在路由器上触发事件。在离子中导航
- php - Laravel 高阶消息意外结果
- c# - 使用从 IFilterProvider 到 NinjectFilterProvider 的绑定激活 IFilterProvider 时出错
- java - 如何用 AND 定义 IF 语句
- sql - 如何将日期数据“转置”到 SQL 中的列中?
- php - 在 Laravel 中生成统计信息
- azure - 如何使用信任库在 azure devops 中创建 sonarqube 任务
- python - 如何在二维数组中创建来自 2 个不同数组的所有组合
- image - 计算屏幕覆盖率