Python3下获取文件路径方法以及相关的操作

一. os.path.realpath(__file__) 文件的当前绝对路径(包含文件名)

例子:
path=os.path.realpath(__file__)
print("os.path.realpath(__file__)方法的结果是:{0}".format(path))

运行结果:

二. os.path.dirname(__file__)文件的当前绝对路径(不包含文件名)

例子:
path2= os.path.dirname(__file__)
print("os.path.dirname(__file__)方法的结果是:{0}".format(path2))


运行结果:

三. os.getcwd()执行文件的当前绝对路径(不包含文件名)

例子:
path3= os.getcwd()
print("os.getcwd()方法的结果是:{0}".format(path3))
运行结果:

os.path.dirname(__file__):获取的是程序路径的文件/目录的名称(如果在程序本身位置则为空,否则一直指向程序的文件/目录路径)
os.getcwd():获取的是当前(运行程序的文件)/目录路径(不管程序放在哪,你在哪运行都是获取此时的路径)


四. os.path.abspath(__file__) 执行文件的当前绝对路径(不包含文件名)

例子:
path4=os.path.abspath(__file__) #获取程序的绝对路径
print("os.path.abspath(__file__)方法的结果是:{0}".format(path4))

运行结果:

os.path.abspath() 和 os.path.realpath() 区别
相同点:都能返回文件的绝对路径。

不同点
例子:
file_a
file_b -> file_a # 软连接指向a (在linux下可以指向某一个文件)

 

 

五. sys.path.append(BASE_DIR) #把路径配到环境变量中
sys.path是一个列表 list ,它里面包含了已经添加到系统的环境变量路径。
当我们要添加自己的引用模块搜索目录时,可以通过列表 list 的 append()方法;
例子:
sys.path.append(BASE_DIR)

六. os.path.dirname(__file__)多层嵌套 #把路径脱皮
例子:

结果:

 

七. os.path.join(BASE_DIR,"report","excelReport","APITestCase.xlsx")#路径的拼接

例子:

import os,sys
#基础路径
BASE_DIR = os.path.dirname(os.path.dirname(__file__))
sys.path.append(BASE_DIR)

# excel测试用例结果文件
TARGET_FILE = os.path.join(BASE_DIR,"report","excelReport","APITestCase.xlsx")

八. os.path.split('D:\czl_api_auto_test\database') #按照路径将文件名和路径分割开
1.PATH指一个文件的全路径作为参数:
2.如果给出的是一个目录和文件名,则输出路径和文件名
3.如果给出的是一个目录名,则输出路径和为空文件名


例子:

file_name1 = os.path.split('D:\czl_api_auto_test\database\APITestCase.xlsx')
print(file_name1)
print("-----------划分线-------------")
file_name2 = os.path.split('D:\czl_api_auto_test\database')
print(file_name2)

运行结果:

 

 

 

 

 

posted @ 2022-04-28 11:40  听海8  阅读(1340)  评论(0编辑  收藏  举报