Python如何列出Zip压缩包内指定文件夹下的所有文件
只列出Zip包中指定文件夹下的文件
嘿,我来帮你调整代码,让它只输出org/文件夹下的文件而不是所有内容!
你当前的代码会遍历压缩包里的每一个条目,要实现目标其实很简单——只需要在遍历的时候加个条件判断,筛选出符合要求的文件路径就行。
这里是修改后的代码:
import zipfile # 注意:你原代码里写的是B.jar,如果实际是Zip包的话记得改成B.zip哦 with zipfile.ZipFile('D:\\python\\B.zip', 'r') as zip_ref: for entry_name in zip_ref.namelist(): # 两个判断条件:路径以org/开头,且不是文件夹本身 if entry_name.startswith('org/') and not entry_name.endswith('/'): content = zip_ref.read(entry_name) print(f'{entry_name}: {content!r}')
关键说明:
- 使用
with语句管理ZipFile对象,这样代码结束后会自动关闭文件,避免资源泄漏,比直接打开更稳妥 startswith('org/')确保我们只处理org文件夹下的内容,不会匹配到其他路径里包含org的条目not entry_name.endswith('/')用来排除文件夹条目(有些压缩包会把文件夹本身作为一个单独的条目存储,比如org/)- 另外注意你原代码里的文件名是
B.jar,如果你的压缩包实际是Zip格式,记得把文件名改成B.zip,不然会报错哦
内容的提问来源于stack exchange,提问作者user3930142
相关产品推荐
相关产品推荐

