os 模块
os模块是和操作系统相关的数据的模块,指直接对操作系统进行操作。
常用的方法:
1、os.path.exists(path) ,如果path存在,返回True;如果path不存在,返回False
2、os.stat('20190409_192149.mp4').st_size , 获取文件大小(字节),返回值是 int 类型
import os # 1. 读取文件大小(字节) file_size = os.stat('20190409_192149.mp4').st_size # 2.一点一点的读取文件 read_size = 0 with open('20190409_192149.mp4',mode='rb') as f1,open('a.mp4',mode='wb') as f2: while read_size < file_size: chunk = f1.read(1024) # 每次最多去读取1024字节 f2.write(chunk) read_size += len(chunk) val = int(read_size / file_size * 100) print('%s%%\r' %val ,end='')
3、os.path.abspath(path) , 获取一个文件的绝对路径 (返回文件绝对路径推荐使用:os.path.realpath(path),因为abspath可能返回软链接路径)
path = '20190409_192149.mp4' # D:\code\s21day14\20190409_192149.mp4 import os v1 = os.path.abspath(path) print(v1) ''' 输出:D:\code\s21day14\20190409_192149.mp4 返回值类型:str '''
4、os.path.dirname(path) ,获取路径的上级目录
import os v = r"D:\code\test\20190409_192149.mp4" a = os.path.dirname(v) print(a,type(a)) ''' 输出结果:D:\code\test 返回值类型:str '''
5、os.path.join(路径,文件名) ,路径的拼接
import os path = "D:\code\test" # user/index/inx/fasd/ v = 'n.txt' result = os.path.join(path,v) print(result) result = os.path.join(path,'n1','n2','n3') print(result) ''' 输出结果:D:\code\test\n.txt D:\code\test\n1\n2\n3 返回值类型:str '''
6、os.listdir(path) , 查看一个目录下所有的文件【第一层】
import os result = os.listdir(r'D:\code\test') for path in result: print(path)
7、os.walk(path), 查看一个目录下所有的文件【所有层】
import os result = os.walk(r'D:\code\s21day14') for a,b,c in result: # a,正在查看的目录 b,此目录下的文件夹 c,此目录下的文件 for item in c: path = os.path.join(a,item) print(path)
总结:
os模块中关于文件/目录常用的函数使用方法
os.path模块中关于路径常用的函数使用方法

浙公网安备 33010602011771号