1、os.path 和 sys.path 区别
os即operating system(操作系统),Python 的 os 模块封装了常见的文件和目录操作
os.path 主要是 用于对系统路径文件的操作
sys.path 主要是 对 Python 解释器的系统环境参数的操作(动态的改变 Python 解释器搜索路径)
2、常用的命令
import sys
import os.path
this_dir = os.path.dirname(__file__)
sys.path.insert(0, this_dir + '/..')
1. 获取当前目录
__file__ #是用来获得模块所在的路径的
os.path.dirname() #返回目录路径
2. sys.path 动态地改变Python搜索路径
如果python中导入的package或module不在环境变量PATH中,那么可以使用sys.path将要导入的package或module加入到PATH环境变量中。
sys.path.append(’引用模块的地址')
sys.path.insert(0, '引用模块的地址')
3、Django中常见使用
os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 这个是获取当前文件的上一级目录
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) 这个是把路径添加到系统的环境变量
os.path.abspath(os.path.join(os.path.dirname(__file__),"..")) #获取当前项目的根路径
4、os.path.join()
python中的os.path.join()用于拼接文件的路径,括号内可以传入多个路径:
1. 从后往前看,从第一个以“/”开头的参数开始拼接,将之前的参数全部丢弃。
2. “./”在程序中屏蔽了“/”,使“/”不起任何作用。
3. os.path.join()的功能只是起到连接文件的作用,而不能生成文件
4. 生成一个目录或者文件名,可以使用:os.mkdir(os.path.join("c:\", "a.txt"))