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的视为文件名

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

  1. IOS中获取各个文件的目录路径的方法和NSFileManager类

    转自:http://blog.sina.com.cn/s/blog_5fb39f910101di92.html IOS中获取各种文件的目录路径的方法 iphone沙箱模型的有四个文件夹,分别是什么,永 ...

  2. iOS中获取各种文件的目录路径的方法

    我们的app在手机中存放的路径是:/var/mobile/Applications/4434-4453A-B453-4ADF535345ADAF344 后面的目录4434-4453A-B453-4AD ...

  3. iOS中获取各种文件的目录路径和文件

    iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么. documents,tmp,app,Library. (NSHomeDirectory ...

  4. IOS中获取各种文件的目录路径的方法-备

    iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么. documents,tmp,app,Library. (NSHomeDirectory ...

  5. (转)IOS中获取各种文件的目录路径的方法

    iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么. documents,tmp,app,Library. (NSHomeDirectory ...

  6. IOS中获取各种文件的路径介绍及方法

    IOS中获取各种文件的目录路径的方法 技术交流新QQ群:414971585 iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么. docum ...

  7. 有关文件夹与文件的查找,删除等功能 在 os 模块中实现

    最近在写的程序频繁地与文件操作打交道,这块比较弱,还好在百度上找到一篇不错的文章,这是原文传送门,我对原文稍做了些改动. 有关文件夹与文件的查找,删除等功能 在 os 模块中实现.使用时需先导入这个模 ...

  8. 使用os模块动态获取目录或文件路径

    在接口自动化测试框架中,我们的代码除了能在本地运行,也能在不在修改代码的前提下在其他的环境下能够运行,这样才能达到高复用性和低维护成本,我们在接口测试的模块调用中,会定义很多相关路径,而这些路径必须使 ...

  9. python基础:os模块中关于文件/目录常用的函数使用方法

    Python是跨平台的语言,也即是说同样的源代码在不同的操作系统不需要修改就可以同样实现 因此Python的作者就倒腾了OS模块这么一个玩意儿出来,有了OS模块,我们不需要关心什么操作系统下使用什么模 ...

随机推荐

  1. Android.mk编译App源码

    在Andriod源码环境编译APP主要考虑如何引入第三方jar包和arr包的问题,初次尝试,步步是坑,这里给出一个模板: LOCAL_PATH := $(call my-dir) include $( ...

  2. SpringBoot 错误(2)

    springBoot整合redis时,报错如下: org.springframework.data.redis.serializer.SerializationException: Cannot de ...

  3. WC2019

    好题啊! 数树 \(\text{opt = 0, 6 pts.}\) 显然答案为 \(y^{n-|E_1∩E_2|}\) . \(\text{opt = 1, 47 pts.}\) \[\sum_{E ...

  4. (干货)基于 veImageX 搭建海报生成平台 -- 附源码

    前言 618 年中促销即将来临,很多公司都会通过海报来宣传自己的促销方案,通常情况下海报由设计团队基于 PS.Sketch 等工具创作,后期若想替换海报文案.商品列表等内容则需打开原工程进行二次创作, ...

  5. 模块re正则

    正则表达式 内容概要 正则表达式前戏 正则表达式之字符组 正则表达式特殊符号 正则表达式量词 正则表达式贪婪与非贪婪匹配 正则表达式取消转义 python内置模块之re模块 内容详情 正则表达式前戏 ...

  6. python PIL 图片素描化

    from PIL import Image import numpy as np a = np.asarray(Image.open("D://7.jpg").convert('L ...

  7. springboot执行流程

    构造方法初始化,创建一个新的实例,这个应用程序的上下文要从指定的来源加载bean public SpringApplication(ResourceLoaderresourceLoader,Class ...

  8. hadoop MapReduce运营商案例关于用户基站停留数据统计

    注 如果需要文件和代码的话可评论区留言邮箱,我给你发源代码 本文来自博客园,作者:Arway,转载请注明原文链接:https://www.cnblogs.com/cenjw/p/hadoop-mapR ...

  9. 基于slate构建文档编辑器

    基于slate构建文档编辑器 slate.js是一个完全可定制的框架,用于构建富文本编辑器,在这里我们使用slate.js构建专注于文档编辑的富文本编辑器. 描述 Github | Editor DE ...

  10. 【转载】vscode配置C/C++环境

    VScode中配置 C/C++ 环境 Tip:请在电脑端查看 @零流@火星动力猿 2022.4.12 1. 下载编辑器VScode 官网:https://code.visualstudio.com/( ...