python os.path模块常用方法详解

简介:

os.path模块主要用于文件的属性获取,在编程中经常用到,以下是该模块的几种常用方法。更多的方法可以去查看官方文档:http://docs.python.org/library/os.path.html

 
  1. 1.os.path.abspath(path) 
  2. 返回path规范化的绝对路径。 
  3.  
  4. >>> os.path.abspath('test.csv'
  5. 'C:\\Python25\\test.csv' 
  6.  
  7. >>> os.path.abspath('c:\\test.csv'
  8. 'c:\\test.csv' 
  9.  
  10. >>> os.path.abspath('../csv\\test.csv'
  11. 'C:\\csv\\test.csv' 
  12.  
  13. 2.os.path.split(path) 
  14. 将path分割成目录和文件名二元组返回。 
  15.  
  16. >>> os.path.split('c:\\csv\\test.csv'
  17. ('c:\\csv''test.csv'
  18. >>> os.path.split('c:\\csv\\'
  19. ('c:\\csv'''
  20.  
  21. 3.os.path.dirname(path) 
  22. 返回path的目录。其实就是os.path.split(path)的第一个元素。 
  23.  
  24. >>> os.path.dirname('c:\\csv\test.csv'
  25. 'c:\\' 
  26. >>> os.path.dirname('c:\\csv'
  27. 'c:\\' 
  28.  
  29. 4.os.path.basename(path) 
  30. 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素。 
  31.  
  32. >>> os.path.basename('c:\\test.csv'
  33. 'test.csv' 
  34. >>> os.path.basename('c:\\csv'
  35. 'csv' (这里csv被当作文件名处理了) 
  36. >>> os.path.basename('c:\\csv\\'
  37. '' 
  38.  
  39. 5.os.path.commonprefix(list) 
  40. 返回list中,所有path共有的最长的路径。 
  41.  
  42. 如: 
  43. >>> os.path.commonprefix(['/home/td','/home/td/ff','/home/td/fff']) 
  44. '/home/td' 
  45.  
  46. 6.os.path.exists(path) 
  47. 如果path存在,返回True;如果path不存在,返回False。 
  48.  
  49. >>> os.path.exists('c:\\'
  50. True 
  51. >>> os.path.exists('c:\\csv\\test.csv'
  52. False 
  53.  
  54. 7.os.path.isabs(path) 
  55. 如果path是绝对路径,返回True。 
  56.  
  57. 8.os.path.isfile(path) 
  58. 如果path是一个存在的文件,返回True。否则返回False。 
  59.  
  60. >>> os.path.isfile('c:\\boot.ini'
  61. True 
  62. >>> os.path.isfile('c:\\csv\\test.csv'
  63. False 
  64. >>> os.path.isfile('c:\\csv\\'
  65. False 
  66.  
  67. 9.os.path.isdir(path) 
  68. 如果path是一个存在的目录,则返回True。否则返回False。 
  69.  
  70. >>> os.path.isdir('c:\\'
  71. True 
  72. >>> os.path.isdir('c:\\csv\\'
  73. False 
  74. >>> os.path.isdir('c:\\windows\\test.csv'
  75. False 
  76.  
  77. 10.os.path.join(path1[, path2[, ...]]) 
  78. 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略。 
  79.  
  80. >>> os.path.join('c:\\', 'csv', 'test.csv') 
  81. 'c:\\csv\\test.csv' 
  82. >>> os.path.join('windows\temp''c:\\', 'csv', 'test.csv') 
  83. 'c:\\csv\\test.csv' 
  84. >>> os.path.join('/home/aa','/home/aa/bb','/home/aa/bb/c'
  85. '/home/aa/bb/c' 
  86.  
  87. 11.os.path.normcase(path) 
  88. 在Linux和Mac平台上,该函数会原样返回path,在windows平台上会将路径中所有字符转换为小写,并将所有斜杠转换为饭斜杠。 
  89.  
  90. >>> os.path.normcase('c:/windows\\system32\\'
  91. 'c:\\windows\\system32\\' 
  92.  
  93. 12.os.path.normpath(path) 
  94. 规范化路径。 
  95.  
  96. >>> os.path.normpath('c://windows\\System32\\../Temp/'
  97. 'c:\\windows\\Temp' 
  98.  
  99. 12.os.path.splitdrive(path) 
  100. 返回(drivername,fpath)元组 
  101.  
  102. >>> os.path.splitdrive('c:\\windows'
  103. ('c:''\\windows'
  104.  
  105. 13.os.path.splitext(path) 
  106. 分离文件名与扩展名;默认返回(fname,fextension)元组,可做分片操作 
  107.  
  108. >>> os.path.splitext('c:\\csv\\test.csv'
  109. ('c:\\csv\\test''.csv'
  110.  
  111. 14.os.path.getsize(path) 
  112. 返回path的文件的大小(字节)。 
  113.  
  114. >>> os.path.getsize('c:\\boot.ini'
  115. 299L 
  116.  
  117. 15.os.path.getatime(path) 
  118. 返回path所指向的文件或者目录的最后存取时间。 
  119.  
  120. 16.os.path.getmtime(path)
  1. 返回path所指向的文件或者目录的最后修改时间 
本文转自 lover00751CTO博客,原文链接:http://blog.51cto.com/wangwei007/1104940,如需转载请自行联系原作者


相关文章
|
9月前
|
SQL 关系型数据库 数据库
Python SQLAlchemy模块:从入门到实战的数据库操作指南
免费提供Python+PyCharm编程环境,结合SQLAlchemy ORM框架详解数据库开发。涵盖连接配置、模型定义、CRUD操作、事务控制及Alembic迁移工具,以电商订单系统为例,深入讲解高并发场景下的性能优化与最佳实践,助你高效构建数据驱动应用。
1033 7
|
9月前
|
监控 安全 程序员
Python日志模块配置:从print到logging的优雅升级指南
从 `print` 到 `logging` 是 Python 开发的必经之路。`print` 调试简单却难维护,日志混乱、无法分级、缺乏上下文;而 `logging` 支持级别控制、多输出、结构化记录,助力项目可维护性升级。本文详解痛点、优势、迁移方案与最佳实践,助你构建专业日志系统,让程序“有记忆”。
788 0
|
9月前
|
JSON 算法 API
Python中的json模块:从基础到进阶的实用指南
本文深入解析Python内置json模块的使用,涵盖序列化与反序列化核心函数、参数配置、中文处理、自定义对象转换及异常处理,并介绍性能优化与第三方库扩展,助你高效实现JSON数据交互。(238字)
735 4
|
10月前
|
安全 Python
告别 os.path 的繁琐:拥抱 Python 的 pathlib
告别 os.path 的繁琐:拥抱 Python 的 pathlib
600 6
|
10月前
|
安全 大数据 程序员
Python operator模块的methodcaller:一行代码搞定对象方法调用的黑科技
`operator.methodcaller`是Python中处理对象方法调用的高效工具,替代冗长Lambda,提升代码可读性与性能。适用于数据过滤、排序、转换等场景,支持参数传递与链式调用,是函数式编程的隐藏利器。
283 4
|
9月前
|
Java 调度 数据库
Python threading模块:多线程编程的实战指南
本文深入讲解Python多线程编程,涵盖threading模块的核心用法:线程创建、生命周期、同步机制(锁、信号量、条件变量)、线程通信(队列)、守护线程与线程池应用。结合实战案例,如多线程下载器,帮助开发者提升程序并发性能,适用于I/O密集型任务处理。
807 0
|
9月前
|
XML JSON 数据处理
超越JSON:Python结构化数据处理模块全解析
本文深入解析Python中12个核心数据处理模块,涵盖csv、pandas、pickle、shelve、struct、configparser、xml、numpy、array、sqlite3和msgpack,覆盖表格处理、序列化、配置管理、科学计算等六大场景,结合真实案例与决策树,助你高效应对各类数据挑战。(238字)
1268 0
|
10月前
|
存储 数据库 开发者
Python SQLite模块:轻量级数据库的实战指南
本文深入讲解Python内置sqlite3模块的实战应用,涵盖数据库连接、CRUD操作、事务管理、性能优化及高级特性,结合完整案例,助你快速掌握SQLite在小型项目中的高效使用,是Python开发者必备的轻量级数据库指南。
833 0
|
11月前
|
存储 安全 数据处理
Python 内置模块 collections 详解
`collections` 是 Python 内置模块,提供多种高效数据类型,如 `namedtuple`、`deque`、`Counter` 等,帮助开发者优化数据处理流程,提升代码可读性与性能,适用于复杂数据结构管理与高效操作场景。
634 0
|
数据安全/隐私保护 Python
抖音私信脚本app,协议私信群发工具,抖音python私信模块
这个实现包含三个主要模块:抖音私信核心功能类、辅助工具类和主程序入口。核心功能包括登录