我有下面的代码,它从一个目录开始,应该进入每个文件夹,打开 cmd 并执行下面的语句。
我可以看到它进入每个目录,但 cmd 屏幕闪烁,但没有提取任何内容。我做错了什么吗?
import os
for dirpath, dirnames, filenames in os.walk('.', topdown = True):
os.system('7z e *.bz2')
print(dirpath)
非常感谢!
最佳答案
在迭代 os.walk
生成器时,您应该使用 dirpath
和 filenames
变量:
import os
for dirpath, _, filenames in os.walk('.', topdown = True):
for filename in filenames:
if filename.endswith('.bz2'):
os.chdir(dirpath)
os.system('7z e ' + os.path.join(dirpath, filename))
关于python - 在python中解压每个文件夹和子文件夹中的所有.bz2文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52586887/