os模块的相关知识整理总结
一、os.path相关
- os.path.join(path, str)--拼接路径
- os.path.isdir(path)--判断是不是文件夹
- os.path.isfile(path)--判断是不是文件
- os.path.dirname(file) --当前文件目录的父目录
- os.path.getsize(path) --获取文件的大小
示例1:
def find_file(path):
name_list = os.listdir(path)
for name in name_list:
# 拼接具体的文件路径
abs_path = os.path.join(path, name)
if os.path.isfile(abs_path):
print(name)
elif os.path.isdir(abs_path):
find_file(abs_path)
示例2:
import os
BASE_PATH = os.path.dirname(os.path.dirname(__file__))
print(BASE_PATH)
二、os.walk相关
os.walk可以获取文件下所有文件/文件夹,最终可以迭代出所有文件,即将子文件下的所有文件都打开
示例1:
#计算文件夹的大小
import os
def dir_cal(path):
size = 0
ret = os.walk(path)
print(ret)
for i in ret:
abs_path, dir_list, file_list = i
for file in file_list:
# print(abs_path)
# print(dir_list)
# print(file_list)
obj_path = os.path.join(abs_path, file)
size += os.path.getsize(obj_path)
return size