本文主要是介绍Python常用函数:获取当前项目路径【abs_path=pathlib.Path(__file__).absolute()】-->【sys.path.append(str(abs_path))】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
当我们导入某个模块文件时, Python 解释器去哪里找这个文件呢?只有找到这个文件才能读取、装载运行该模块文件。
它一般按照如下路径寻找模块文件(按照顺序寻找,找到即停不继续往下寻找):
- 内置模块
- 当前目录
- 程序的主目录
- pythonpath 目录(如果已经设置了pythonpath 环境变量)
- 标准链接库目录
- 第三方库目录(site-packages 目录)
- .pth 文件的内容(如果存在的话)
- sys.path.append()临时添加的目录
当任何一个python 程序启动时,就将上面这些搜索路径(除内置模块以外的路径)进行收集,放到sys 模块的path 属性中(sys.path)。
一、使用 pathlib
# -*- coding: utf-8 -*-import sys
import os
import pathlib# 当我们导入某个模块文件时, Python 解释器去哪里找这个文件呢?只有找到这个文件才能读取、装载运行该模块文件。
curr_path = pathlib.Path(__file__).resolve().parents[0] # 获取当前文件所在目录的绝对路径
parent_path = pathlib.Path(__file__).resolve().parents[1] # 获取当前文件所在目录的父级目录的绝对路径sys.path.append(str(curr_path)) # sys.path.append()临时添加的目录
sys.path.append(str(parent_path )) # sys.path.append()添加临时的依赖模块搜索目录json_path = os.path.join(abs_path, './raw_data/服饰_50k.json') # 原始数据地址
二、使用os.path
# -*- coding: utf-8 -*-import sys
import os
import pathlib# 当我们导入某个模块文件时, Python 解释器去哪里找这个文件呢?只有找到这个文件才能读取、装载运行该模块文件。
curr_path = os.path.dirname(os.path.abspath(__file__)) # 获取当前文件所在目录的绝对路径
parent_path = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) # 获取当前文件所在目录的父目录的父目录的绝对路径sys.path.append(curr_path) # sys.path.append()临时添加的目录
sys.path.append(parent_path) # sys.path.append()添加临时的依赖模块搜索目录json_path = os.path.join(abs_path, './raw_data/服饰_50k.json') # 原始数据地址
这篇关于Python常用函数:获取当前项目路径【abs_path=pathlib.Path(__file__).absolute()】-->【sys.path.append(str(abs_path))】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!