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

最新文章

  1. Java 根据经纬度计算两点之间的距离
  2. CoreData数据库浅析
  3. Visual studio 类视图和资源视图不显示的问题
  4. 在不同的pyhon版本中切换
  5. iOS开发之Xcode 相对路径与绝对路径
  6. WIN2008 R2 安装SQLSERVER2008笔记
  7. Python中的字典排序
  8. 【.Net免费公开课】--授技.Net中的高帅富技术-"工作流"
  9. htmlparser源码简单分析
  10. 全互联结构DVPN综合配置示例
  11. Jquery moblie中的分栏布局
  12. ural 1091. Tmutarakan Exams(容斥原理)
  13. 对SNS网站现状和未来的一些想法——以我对人人网的体验为例
  14. banner自动生成工具,ascii文字展示
  15. SQL Server性能优化——等待——SLEEP_BPROOL_FLUSH
  16. JAVA实现接口监控报警系统
  17. Mock.js常用占位符——Basic、Date、Color
  18. CMD之入门篇
  19. SpringBoot MyBatis 配置多数据源 (静态多个)
  20. python 进程池pool简单使用

热门文章

  1. 好客租房54-props深入(children属性)
  2. Unity-自定义事件派发器的两次尝试
  3. 3000帧动画图解MySQL为什么需要binlog、redo log和undo log
  4. Navicat 连接 MySQL
  5. CabloyJS v3.1.0支持集群及更多 🎉
  6. hive完整搭建
  7. 3. Caller 服务调用 - dapr
  8. 使用Scrcpy投屏
  9. DNS 系列(二):DNS 记录及工作方式,你了解吗?
  10. Eolink 推出面向中小企业及初创企业支持计划,为企业赋能!