import os import tarfile import zipfile def un_landsat8_file(path,out): classs1 = os.listdir(path) for idx, folder in enumerate(classs1): if folder[-7:]==".tar.gz": f_name = folder.replace(".tar.gz", "") print(f_name) outfile = out + "\\" + f_name tar = tarfile.open(path + "\\" + folder) # 打开影像压缩包 names = tar.getnames() # 获取影像压缩包里包含的文件名 for name in names: tar.extract(name, path=outfile) # 开始解压(这里解压的是所有文件,也可以只解压其中的某一个文件,指定文件名就好) tar.close() print(f_name,"提取完成") def un_zip_sentinel(file_name,upload_path): """unzip zip file""" zip_file = zipfile.ZipFile(os.path.join(upload_path,file_name)) file_name_pre=os.path.basename(file_name).split('.')[0] restore_path=os.path.join(upload_path,file_name_pre) print(restore_path) # if not os.path.exists(restore_path): # os.makedirs(restore_path) # for names in zip_file.namelist(): # zip_file.extract(names,restore_path) # zip_file.close() return restore_path if __name__ == '__main__': # 网上下的Landsat数据都是压缩包(.tar.gz),因此需调用tarfile包(其他类似的解压缩包也可以) path =r'F:\algorithm\解压缩\1' out=r'F:\algorithm\解压缩\成果' classs1 = os.listdir(path) for idx, folder in enumerate(classs1): print(folder) sentinel_path=os.path.join(path,folder) un_zip_sentinel(sentinel_path, out)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人