os模块是和系统进行交互的模块python
makedirs()bash
os.makedirs('dir1/dir2')
mkdir(),当父文件夹存在时,能够在父文件建立zi文件夹,需注意的是依然是只建立一个文件夹,当在没有此文件名的父文件中建立子文件夹时会报错dom
os.mkdir('dir3/dir4') 运行结果: 报错 os.mkdir('dir3') os.mkdir('dir3/dir4') 运行结果: 建立相应文件夹
须要注意的是不管哪一种删除文件夹的操做都只会删除空文件夹,含有文件的文件夹不会被删除ui
removedirs()当不存在要删除的文件夹名时会报错spa
os.removedirs('dir3/dir4')
rmdir()当不存在要删除的文件夹名时会报错操作系统
os.rmdir('dir3/dir4')
listdir()列出指定目录下的全部文件及子目录,包括隐藏文件,以列表形式打印code
print(os.listdir("E:\python-file\August_new\8-20\day18")) 运行结果: ['1.内容回顾.py', '2.本周安排和今日内容.py', '3.random模块.py', '4.时间模块.py', '5.sys模块.py', '6.os模块.py', 'dir1', '__init__.py']
os.remove()删除一个文件blog
os.rename("oldname","newname")重命名文件ip
os.stat()过去文件/目录信息rem
print(os.stat("E:\python-file\August_new\8-20\day18")) print(os.stat("E:\python-file\August_new\8-20\姚佳琦.py")) 运行结果: os.stat_result(st_mode=16895, st_ino=7318349394508752, st_dev=3235112279, st_nlink=1, st_uid=0, st_gid=0, st_size=4096, st_atime=1534766481, st_mtime=1534766481, st_ctime=1534748366) os.stat_result(st_mode=33206, st_ino=10133099161615310, st_dev=3235112279, st_nlink=1, st_uid=0, st_gid=0, st_size=3059, st_atime=1534764269, st_mtime=1534764269, st_ctime=1534751574)
统计文件的大小
os.path.getsize('路径') # python的命令 dir 路径 \C # 操做系统的命令
显示当前路径下的全部文件和文件夹
os.system('dir 路径') # 使用python语言直接执行操做系统的命令 os.listdir('路径') # 使用python语言的os模块提供的方法 间接调用了操做系统命令
os.system("bash command")直行系统的命令没有返回值
os.system('执行字符串数据类型的操做系统命令')
os.popen("bash command").read()直行命令获取结果
os.popen('执行字符串数据类型的操做系统命令,并返回结果')
os.getcwd()获取当前的工做目录,也就是当前python脚本工做的目录路径
获取当前执行命令的时候所在的目录
os.chdir("dirname")改变当前脚本的工做目录
修改当前执行命令的时候所在的目录
目录拼接,适合全部操做系统
file_lst = os.listdir('E:\python-file\August_new\8-20\day18') for path in file_lst: print(os.path.join('E:\python-file\August_new\8-20\day18', path)) 运行结果: E:\python-file\August_new\Scripts\python.exe E:/python-file/August_new/8-20/day18/6.os模块.py E:\python-file\August_new\8-20\day18\1.内容回顾.py E:\python-file\August_new\8-20\day18\2.本周安排和今日内容.py E:\python-file\August_new\8-20\day18\3.random模块.py E:\python-file\August_new\8-20\day18\4.时间模块.py
os.path.abspath(path) 返回path规范化的绝对路径 os.path.split(path) 将path分割成目录和文件名二元组返回
os.path.dirname(path) 返回path的目录。其实就是os.path.split(path)的第一个元素
os.path.basename(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
os.path.exists(path) 若是path存在,返回True;若是path不存在,返回False
os.path.isabs(path) 若是path是绝对路径,返回True
os.path.isfile(path) 若是path是一个存在的文件,返回True。不然返回False
os.path.isdir(path) 若是path是一个存在的目录,则返回True。不然返回False
os.path.join(path1[, path2[, ...]]) 将多个路径组合后返回,第一个绝对路径以前的参数将被忽略
os.path.getatime(path) 返回path所指向的文件或者目录的最后访问时间
os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间
os.path.getsize(path) 返回path的大小
os模块: 定制了不少方法 间接的帮助你去调用操做系统的命令 得到结果 而后帮助你分析整理成咱们须要的数据类型的形态 同时也能够os.popen/os.system直接取调用操做系统的命令 得到结果 可是 分析和整理的工做须要你本身作 用os模块的方法自己可以完成的功能咱们就用定制好的方法就够了 若是有一天 你发现os模块定制好的功能解决不了咱们的问题了 而恰好操做系统的命令可以很好地帮助咱们解决问题 这个时候就用os.popen/os.system