#16题文件移动,创建文件夹
'''import os#对目录和文件常规操作模块
import shutil#复制移动压缩文件模块
dir="./练习用文件"#当前文件夹目录名
for file in os.listdir(dir):#查找此目录下所有文件
ext=os.path.splitext(file)[1]#os.path.splitext()分离文件名和后缀,以元组形式返回。
ext=ext[1:]#把输出中的点号去掉,只要后缀名称,选取ext的第一个元素
if not os.path.isdir(f"{dir}/{ext}"):#如果{dir}/{ext}这个目录不存在就创建
os.mkdir(f"{dir}/{ext}")#创建目录,目录名{dir}/{ext}
source_path=f"{dir}/{file}"#需要移动的文件
target_path=f"{dir}/{ext}/{file}"#需要移动到的文件夹
shutil.move(source_path,target_path)
#print(file,ext)'''
读取文件结果,文件后缀带点号
去掉点号
#17题递归搜索目录,找出最大文件
import os
search_dir="C:/Users/Administrator/Desktop/python练习题文本保存"
result_files=[]
for root,dirs,files in os.walk(search_dir):#递归搜索目录,root当前目录路径,dirs代表当前目录下的子目录,files代表当前目录下普通文件
for file in files:
#if file.endswith(".txt"):值操作txt文件
file_path=f"{root}/{file}"#文件路径
result_files.append((file_path,os.path.getsize(file_path)/1000))
print(sorted(result_files,key=lambda x: x[1],reverse=True))