python os 模块

os 模块里面的方法都是与文件和目录相关的

以下介绍一下常用方法的语法和使用

import os,sys
os.remove()删除文件
os.read(fd,n) 读取指定字节的字符串
 打开文件
fd = os.open("f1.txt", os.O_RDWR)
 读取文本
ret = os.read(fd, 12)
print(ret)
 关闭文件
os.close(fd)
print("关闭文件成功!!")
os.open(file, flags[, mode]) 打开文件
file -- 要打开的文件
os.O_RDONLY: 以只读的方式打开
 os.O_WRONLY: 以只写的方式打开
 os.O_RDWR : 以读写的方式打开
 os.O_NONBLOCK: 打开时不阻塞
 os.O_APPEND: 以追加的方式打开
 os.O_CREAT: 创建并打开一个新文件
 os.O_TRUNC: 打开一个文件并截断它的长度为零(必须有写权限)
 os.O_EXCL: 如果指定的文件存在,返回错误
 os.O_SHLOCK: 自动获取共享锁
 os.O_EXLOCK: 自动获取独立锁
 os.O_DIRECT: 消除或减少缓存效果
 os.O_FSYNC : 同步写入
 os.O_NOFOLLOW: 不追踪软链接
mode 类似于chmod
 打开文件
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )
path="./ss"
os.mkdir(path)新建目录
os.makedirs()递归创建目录
os.chdir()改变当前路径
 res=os.getcwd()
 print('当前路径是:',res)
 path='d:\'
 res1=os.chdir(path)
 res2=os.getcwd()
 print('当前路径:',res2)

res3=os.chdir('D:\code')
print(os.getcwd())
res4=os.listdir(os.getcwd()) 返回该目录下的文件夹和文件
print(res4)
os.remove()删除该路径下的文件,若为目录则报OSError

os.walk()

os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

os.walk() 方法用于通过在目录树种游走输出在目录中的文件名,向上或者向下。
top -- 根目录下的每一个文件夹(包含它自己), 产生3-元组 (dirpath, dirnames, filenames)【文件夹路径, 文件夹名字, 文件名】。

topdown --可选,为True或者没有指定, 一个目录的的3-元组将比它的任何子文件夹的3-元组先产生 (目录自上而下)。如果topdown为 False, 一个目录的3-元组将比它的任何子文件夹的3-元组后产生 (目录自下而上)。

onerror -- 可选,是一个函数; 它调用时有一个参数, 一个OSError实例。报告这错误后,继续walk,或者抛出exception终止walk。

followlinks -- 设置为 true,则通过软链接访问目录
若topdown为True,是要先遍历根目录,在遍历子目录的,如果根目录没有文件,则返回空的list

for root,dir,file in os.walk(os.getcwd()):
    for name in dir:
        print(name)
    for name in file:
        print(name)

 os.path 模块

os.path.getsize()#获取文件或目录的大小
os.path.split()#分割文件或目录名字
os.path.dirname()#获取目录名字
os.path.isdir()#是否是目录,目录不存在则返回FALSE
os.path.isfile()#是否是文件,文件不存在则返回FALSE
os.path.exists()#文件、目录是否存在
os.path.getatime()#获取文件、目录最后存储时间
os.path.getmtime()#获取文件目录最后更新时间
os.path.join() #把多个路径组合
本文为个人的实际操作经验之谈,转载、复制请注明出处,谢谢!
原文地址:https://www.cnblogs.com/zhouxudong/p/9267184.html