一、os.walk()
os.walk(top, topdown=True, οnerrοr=None, followlinks=False)
可以得到一个三元tupple(dirpath, dirnames, filenames),
第一个为起始路径,第二个为起始路径下的文件夹,第三个是起始路径下的文件。
dirpath 是一个string,代表目录的路径,
dirnames 是一个list,包含了dirpath下所有子目录的名字。
filenames 是一个list,包含了非目录文件的名字。
这些名字不包含路径信息,如果需要得到全路径,需要使用os.path.join(dirpath, name)
二、枚举文件夹下所有文件
import os
# 枚举dirPath目录下的所有文件
def main(dirname):
# begin
for root, dirs, files in os.walk(dirname):
print(root)
print(dirs)
print(files)
for dir in dirs:
print(os.path.join(root, dir))
for file in files:
print(os.path.join(root, file))
print('----------------')
if __name__ == '__main__':
main(r'G:\ftp\home\bigberg')
三、遍历文件夹获取大小
def get_used_size(dirname):
"""
遍历文件夹获取文件大小
"""
size = 0
for dir_path, dirs, files in os.walk(dirname):
# size += sum([os.path.getsize(os.sep.join([dir_path, name])) for name in files])
for name in files:
size += os.path.getsize(os.sep.join([dir_path, name]))
return size