os模块
基本功能–删除
import os
os.rename('mm.py', '新名字.py') # 重命名文件夹
os.remove('111.py') # 删除文件,不能删除文件夹
os.rmdir('111') # 删除空文件夹的
创建
# 创建文件夹,父目录不存在的时候不能创建,父目录存在也可以创建多层级的
os.mkdir('cars/bmw1/bmw11')
os.mkdir('222')
# 创建文件夹,可以创建有层级关系的文件夹:cars/bmw
# 如果父目录不存在,会创建父目录
os.makedirs('cars/bmw2/bmw22')
获取目录下的内容
# 获取某个目录下的内容,不传值代表获取当前目录
print(os.listdir())
print(os.listdir(r'E:\besttest\besttest_code\fmz_test\飞马座课堂笔记'))
print(os.listdir('../')) # 相对路径
路径相关
print(os.environ) # 取系统的环境变量
print(os.name) # 当前操作系统的名称
print(os.getcwd()) # 获取当前的绝对路径
os.chdir('../day3') # 进入到某个路径里面
print(os.path.exists('m2.py')) # 判断是否存在
# 在当前文件夹下,直接写名字就行,不在就写文件/文件夹的绝对路径
print(os.path.isfile('m2.py')) # 判断是不是文件夹
print(os.path.isdir('tools2')) # 判断是不是文件夹
print(os.path.getsize('m2.py')) # 获取文件的大小,单位是字节
print(os.path.abspath('m1.py')) # 获取绝对路径
print(os.path.abspath(__file__)) # 获取当前文件的绝对路径
print(os.path.dirname(__file__)) # 获取父目录,上一级目录
print(os.path.dirname('E:/besttest/besttest_code/fmz_test')) # 获取父目录
print(os.path.getctime('m2.py')) # 获取文件创建时间
print(os.path.getatime('m2.py')) # 获取文件最后一次访问时间
print(os.path.getmtime('m2.py')) # 获取文件的修改时间
拼接路径
print(os.path.join('e:', 'moives', 'hhh.mp4')) # 拼接路径
p = 'e:moives\hhh.mp4'
print(os.path.split(p)) # 把前面路径和文件名分割开,可以用作取文件名
os.walk
遍历某个目录下的所有文件,一层一层进入
# 当前在哪个目录下
# 当前目录下的所有文件夹
# 当前目录下的所有文件
for cur_path, dirs, files in os.walk(r'E:\besttest\besttest_code\fmz_test\飞马座课堂笔记'):
print('cur_path', cur_path)
print('dirs', dirs)
print('files', files)
模糊查找文件
import os
def search_file(path, keyword):
for cur_path, dirs, files in os.walk(path):
for file_name in files: # xx.mp4
if keyword in file_name:
# if file_name.endswith(keyword):
abs_path = os.path.join(cur_path, file_name)
print("查找到 %s,绝对路径是 %s" % (file_name, abs_path))
search_file("d:", "mp4")