Python之os模块

Python之os模块

 我们在运维工作中经常需要查找和操作大量的文件,这就需要对大量的文件和路径进行操作,这就必须

依赖os模块。下面我们介绍几个os模块最常用的方法:

1、涉及当前路径及其路径下的文件 

os.getcwd()

功能:获取当前所在的路径

示例:

 import os
 print(os.getcwd())
 
 结果:'C:\Users\chencheng'

os.listdir(path)

功能:列出指定路径下的所有的文件和目录,只显示指定目录下的一级内容。

示例:

 import os
 os.listdir('/home/imix/imixapp/InternalHub')

2、绝对路径的使用

os.path.abspath(path)

功能:获取指定路径的绝对路径

示例:

 import os
 os.path.abspath('./')

3、操作路径中的文件夹和文件

os.path.split()

功能:将一个路径中的路径与文件分开。

注意:路径和文件名的分开主要看结尾处是否有分隔符,有和没有结果是不一样的

示例:

 >>> os.path.split('/home/imix/imixapp/InternalHub/IH')
  ('/home/imix/imixapp/InternalHub', 'IH')
 >>> os.path.split('/home/imix/imixapp/InternalHub/IH/')
  ('/home/imix/imixapp/InternalHub/IH', '')

os.path.join(path1, path2, path3....)

功能:将多个路径合并成一个完整的路径

注意:如果path中有绝对路径,则相同的部分只显示一次,剩余的使用系统默认的分隔符连接

示例:

 os.path.join('/home/imix/imixapp', '/home/imix/imixapp/InternalHub', 'IH', 'cfg')
     
结果:/home/imix/imixapp/InternalHub/IH/cfg

os.path.dirname(path)

功能:获取路径中的文件夹部分。最后一个分隔符左边的都是文件夹部分

示例:

>>> os.path.dirname('/home/imix/imixapp/InternalHub/IH')
'/home/imix/imixapp/InternalHub'
>>> os.path.dirname('/home/imix/imixapp/InternalHub/IH/')
'/home/imix/imixapp/InternalHub/IH'

os.path.basename(path)

功能:获取路径的文件名,最后一个分隔符右边的部分就是文件部分

示例:

>>> os.path.basename('/home/imix/imixapp/InternalHub/IH/cfg/InternalHub.xml')
    'InternalHub.xml'
>>> os.path.basename('/home/imix/imixapp/InternalHub/IH/cfg/InternalHub.xml/')
    ''

4、查看文件或目录的元数据信息

os.path.getmtime(path) | os.path.getatime(path) | os.path.getctime(path)

功能:分别获取文件或目录的修改时间、访问时间和创建时间

os.path.getsize(path)

功能:获取文件或文件夹的大小

示例:

os.path.getsize('home/imix/imixapp/InternalHub/IH/cfg/InternalHub.xml')

5、判断文件类型以及是否存在

os.path.isdir(path)

功能:判断一个对象路径是否是目录,是返回Ture,否返回False

os.path.isfile(path)

功能:判断一个对象路径是否是文件,是返回Ture,否返回False

os.path.exists('path')

功能:查看某个文件是否存在

示例:

 os.path.exists('file')

6、其他用法

os.sep:获取系统的分隔符

os.linesep:获取系统上文件的结尾符

os.pathsep:获取当前系统的变量分隔符

原文地址:https://www.cnblogs.com/myeric/p/8582144.html