• OS模块中获取当前文件的绝对路径的相关方法


    os.path.realpath(__file__)

    作用:获取当前执行py脚本的绝对路径(在当前工作目录下的绝对路径)

    __file__ : 表示当前文件的本身,一般值是当前文件的相对路径

    例如:

    main.py 脚本文件的路径是 /home/study_explore/cnn_VMASK/main.py

    在main.py 文件中运行以下代码:

    dir_path = os.path.realpath(__file__)
    print(__file__)
    print(dir_path)
    
    >> main.py
    >> /home/study_explore/cnn_VMASK/main.py
    

    os.path.dirname(path)

    作用: 去掉文件名(或者文件夹),并返回该文件所在的目录

    例如:

    main.py 脚本文件的路径是 /home/study_explore/cnn_VMASK/main.py,在main.py 中有如下代码:

    dir_path = os.path.realpath(__file__)
    print(os.path.dirname(dir_path))
    print(os.path.dirname(os.path.dirname(dir_path)))
    
    >> /home/study_explore/cnn_VMASK
    >> /home/study_explore
    

    TIPS: os.path.realpath(__file__) 和 os.path.dirname(path) 结合起来使用就可以的到在工作目录下的当前文件所在目录的绝对路径。

    例如:

    main.py 脚本文件的路径是 /home/study_explore/cnn_VMASK/main.py,在main.py 中有如下代码:

    dir_path = os.path.dirname(os.path.realpath(__file__))
    print(dir_path)
    
    >> /home/study_explore/cnn_VMASK
    

    os.path.abspath()

    作用: 返回指定的py脚本的绝对路径

    例如:

    main.py 脚本文件的路径是 /home/study_explore/cnn_VMASK/main.py,在main.py 中有如下代码:

    print(os.path.abspath(__file__))
    print(os.path.abspath(".")) #当前文件所在目录的绝对路径
    print(os.path.abspath("..")) #当前文件的上级目录的绝对路径
    
    >> /home/study_explore/cnn_VMASK/main.py
    >> /home/study_explore/cnn_VMASK
    >> /home/study_explore
    

    os.path.basename()

    作用: 返回当前所在脚本的文件名称

    例如:

    print(os.path.basename(__file__))
    
    >> main.py
    

    os.getcwd()

    作用: 返回当前进程的工作目录。

    工作目录:每一个可运行的程序都会有一个工作目录,而不是直接在根目录下运行的,该程序的相对路径就是指相对于工作目录。

    相对应的 os.chdir() --> 设置当前进程的工作目录

    例如:

    main.py 脚本文件的路径是 /home/study_explore/cnn_VMASK/main.py,在main.py 中有如下代码:

    dir_path = os.path.dirname(os.path.realpath(__file__))
    os.chdir(dir_path)
    print(os.getcwd())
    
    >> /home/study_explore/cnn_VMASK
    

    os.path.join()

    作用: 文件路径的拼接

    详细请见: python中 OS模块中 os.path.join() 函数用法简介 - jacknie23 - 博客园 (cnblogs.com)

    os.path.split()

    作用: 分割全路径名中的目录和文件名; 如果给出的是一个目录和文件名(a/b/c.py)或者(a/b/c),则输出路径和文件名(("a/b","c.py")) 或者 (("a/b","c")) ; 如果给出的是一个目录名(a/b/c),则输出路径和为空文件名(("a/b/c",""))

    也就是说,它仅仅是以 全路径名 中最后一个 '/' 作为分隔符,分隔后,将索引为0的视为目录(路径),将索引为1的视为文件名

  • 相关阅读:
    翌加科技:新手自学短视频简介不可忽视的剪辑攻略
    用 js 实现判断是否是小数
    猿创征文|【C++游戏引擎Easy2D】我拿吃零食的时间,学会了在C++上添加可点击按钮
    Android开发基础——常用控件的使用方法
    项目中遇到的LocalDateTime时间格式转换问题
    内网渗透之Socks代理简介
    CompletableFuture 使用教程
    Pytorch面试题面经
    设计模式学习(七):适配器模式
    std::format 如何实现编译期格式检查
  • 原文地址:https://www.cnblogs.com/jack-nie-23/p/16557550.html