sys.path列表中给目录路径后加两个点(..)的作用是什么?
sys.path添加带
..路径的作用说明 在各主流操作系统的路径规则中,..是固定的上级目录标识符,你给出的示例里/home/pran/Downloads/workingdirectory/..路径实际解析后等价于/home/pran/Downloads/。
这行代码的作用可归纳为以下几点:
- 解决父目录模块导入需求:默认sys.path中仅包含当前工作目录,Python解释器只会搜索该目录下的模块和包,把上级目录加入sys.path后,解释器就能直接搜索并导入存放在当前目录上级路径中的公共依赖模块
- 适配项目仓库的通用结构:你参考的TensorRT示例脚本存放在仓库的
samples/python/introductory_parser_samples/子目录下,而所有Python示例共用的工具代码、通用依赖都存放在上级的samples/python/目录中,插入上级目录到sys.path后,脚本可以直接导入这些公共文件,既不需要用户手动配置环境变量,也不需要写死绝对路径,能兼容不同用户把仓库下载到本地的任意存放位置 - 控制导入优先级:使用
sys.path.insert(1, 路径)的写法,是把父目录路径放到仅次于当前工作目录的搜索优先级位置,避免系统中存在同名模块时出现导入错误
内容的提问来源于stack exchange,提问作者user13174343
相关产品推荐
相关产品推荐

