Python:获取当前文件的路径以及上一级路径

您所在的位置:网站首页 python获取当前路径的上一级目录怎么写 Python:获取当前文件的路径以及上一级路径

Python:获取当前文件的路径以及上一级路径

2023-11-20 18:22| 来源: 网络整理| 查看: 265

准备工作

在使用Python过程中,经常会遇到会切换路径的情况,如:文件的打开、读取、写入等 根据网上资料学习并总结使用Python获取当前文件路径以及上一级路径的方法(使用os模块)。

学习os模块基本知识,本次会使用:os.getcwd()、os.path.dirname、os.path.abspath()、os.pardir、os.path.pardir、os.path、join(); 准备测试路径,如下; 以test2.py文件为例,由下可见,test2.py文件路径为:F:\test\test1\test2\test2.py。

欢迎补充其他方法

F:\TEST │ test.py │ └─test1 └─test2 test2.py os模块操作 # test2.py文件当前路径,也就是:F:\test\test1\test2 # -----------------------------获取当前文件路径----------------------------- import os print(os.getcwd()) # 输出:F:\test\test1\test2 print(os.path.dirname(__file__)) # 获取当前文件的父目录,此方法生成的并不是绝对路径,输出:F:/test/test1/test2 print(os.path.abspath(os.path.dirname(__file__))) # 使用os.path.abspath()方法,输出:F:\test\test1\test2

小结 获取当前文件路径方法有:

os.getcwd() os.path.abspath(os.path.dirname(file)) # test2.py文件的上一级路径,也就是:F:\test\test1 # -----------------------------获取当前文件的上一级路径----------------------------- import os # 方法1:os.path.dirname():获取文件路径 + os.getcwd() print(os.getcwd()) # 由上面使用可看出,os.getcwd()获取的是当前文件路径,输出:F:\test\test1\test2 # 使用os.path.dirname()方法 print(os.path.dirname(os.getcwd())) # 输出:F:\test\test1 # 转换为上一级地址的获取绝对路径 print(os.path.abspath(os.path.dirname(os.getcwd()))) # 方法2:os.path.dirname():获取文件路径 + __file__ print(__file__) # 获取当前文件路径,包含当前文件,输出:F:/test/test1/test2/test2.py print(os.path.dirname(__file__)) # 输出:F:/test/test1/test2 print(os.path.dirname(os.path.dirname(__file__))) # 输出:F:/test/test1 # 转换为上一级地址的获取绝对路径 print(os.path.abspath(os.path.dirname(os.path.dirname(__file__)))) # 方法3:os.path.join(os.getcwd(),'..') # .. 为父目录 print(os.pardir) # 获取父目录,返回‘..’ print(os.path.pardir) # 获取父目录,返回‘..’ ''' 源码ntpath.py文件内,有兴趣的同学可以试试 curdir = '.' pardir = '..' extsep = '.' sep = '\\' pathsep = ';' altsep = '/' defpath = '.;C:\\bin' devnull = 'nul' ''' print(os.path.join(os.getcwd(), '..')) # 输出:F:\test\test1\test2\.. print(os.path.abspath(os.path.join(os.getcwd(), '..'))) # 输出:F:\test\test1 print(os.path.abspath(os.path.join(os.getcwd(), os.path.pardir))) # 也可使用os.pardir或os.path.pardir print(os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))) # 输出:F:\test\test1

小结: 获取当前文件上一级路径方法有:

os.path.abspath(os.path.dirname(os.getcwd())) os.path.abspath(os.path.dirname(os.path.dirname(file))) os.path.abspath(os.path.join(os.path.dirname(file), '..')) os.path.abspath(os.path.join(os.getcwd(), os.path.pardir)) os.path.abspath(os.path.join(os.getcwd(), '..')) ....

欢迎补充其他方法



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3