利用os模块的os.walk(path)方法遍历计算机中的某个文件夹以及该文件夹下的所有子文件夹,传入的参数path是一个文件夹路径的字符串,如:‘C:\a\b’ 返回值有三个:
1.当前文件夹(‘C:\a\b’ )名称的字符串。
2.当前文件夹(‘C:\a\b’ )中子文件夹的路径字符串的列表,比如 [‘C:\a\b\1’, ‘C:\a\b\2’, …]
3.当前文件夹(‘C:\a\b’ )中文件的路径字符串的列表,比如 [‘123.txt’, ‘456.exe’, …]
可以利用for a, b, c in os.walk(path)遍历文件夹,第一次循环是遍历’C:\a\b’,第二次遍历’C:\a\b’中的第一个子文件夹’C:\a\b\1’,以此类推,知道遍历完所有子文件夹。
写一个小程序,查找’F:\OneDrive\文档\毛概’下所有大于100kb的文件并打印出来
def SearchFile(path):#path: 'F:\\OneDrive\\文档\\毛概'
if not os.path.exists(path):
print('This path does not exist!')
return False
for currentFolderName, SubFolderNames, FileNames in os.walk(path):
for FileName in FileNames:
size = os.path.getsize(currentFolderName+'\\'+FileName)
if(size >= 100 * 1024):
print(currentFolderName+'\\'+FileName+' 大小: %s字节'%size)
import os
SearchFile('F:\\OneDrive\\文档\\毛概')