获取拼接后的绝对路径

 

import os
# 1 获取当前文件的绝对路径目录
Dir=os.path.abspath(__file__)
print(f"1 绝对路径:{Dir}")
# 2 去掉文件名称 保留获取目录
DirNo=os.path.dirname(Dir)
print(f'2 去掉名称保留路径:{DirNo}')
# 3 拼接目录
path='../data/t'
pinPath=os.path.join(DirNo,path)
print(f"3 拼接目录:{pinPath}")
# 4 优化
upath=os.path.normpath(pinPath)
print(f"4 优化后的目录:{upath}")
'''
1 绝对路径:D:\python-pro\demo002\temp\path_test.py
2 去掉名称保留路径:D:\python-pro\demo002\temp
3 拼接目录:D:\python-pro\demo002\temp\../data/t
4 优化后的目录:D:\python-pro\demo002\data\t
'''

 -------------------------------------------------------------------------------------------

传参数直接使用

import os
def get_ob_path(path):
    # 1 获取当前文件的绝对路径目录
    Dir=os.path.abspath(__file__)
    print(f"1 绝对路径:{Dir}")
    # 2 去掉文件名称 保留获取目录
    DirNo=os.path.dirname(Dir)
    print(f'2 去掉名称保留路径:{DirNo}')
    # 3 拼接目录

    pinPath=os.path.join(DirNo,path)
    print(f"3 拼接目录:{pinPath}")
    # 4 优化
    upath=os.path.normpath(pinPath)
    print(f"4 优化后的目录:{upath}")
    return upath
#调用
if __name__ == '__main__':
    test_path='../data/1.png'
    r=get_ob_path(test_path)

    print(r)
    '''
    1 绝对路径:D:\python-pro\demo003\utils\ob_path.py
    2 去掉名称保留路径:D:\python-pro\demo003\utils
    3 拼接目录:D:\python-pro\demo003\utils\../data/1.png
    4 优化后的目录:D:\python-pro\demo003\data\1.png
    '''

 

---------------------------------------------------------------------------------------------

旧版

 

 


import  os
# 获取绝对路径
abspath=os.path.abspath(__file__)
# 去掉文件 仅保留目录

current_path = os.path.dirname(abspath) # 获得当前的路径
relative_path_yaml_path = '../data/t'  # 获得各个接口请求路径的配置文件的相对路径

absolute_path = os.path.join(current_path, relative_path_yaml_path) # 获得拼接后的绝对路径
print(f"拼接后的绝对路径:{absolute_path}")
with open(absolute_path) as fo:
print(f"读取t中的内容:{fo.readlines()}")
 

'''

拼接后的绝对路径:D:\python-pro\baseapi\test_case\../data/t
读取t中的内容:['hhhh']

'''

posted @ 2023-08-22 15:59  胖豆芽  阅读(14)  评论(0编辑  收藏  举报