我的问题是:使用时:
import tarfile
tar = tarfile.open("sample.tar.gz")
tar.extractall()
tar.close()
如果压缩之前的文件名为“ sampleFolder”,执行上述步骤后,如何返回“ sampleFolder”名称,更好地使用其完整路径,或者如何将结果设置为“ Folder”之类的其他名称?
这不是一个好问题,但是我的项目中实际上对此有需求。
我必须将问题编辑为:如果我不知道“ sampleFolder”,在解压缩步骤之后能否返回到它
默认情况下,它将被提取到工作目录:
import os
os.getcwd()
因此,提取数据的路径为:
from pathlib import Path
extracted_to_path = Path.cwd() / 'sampleFolder'
要提取到其他位置:
with tarfile.open('sample.tar.gz') as tar:
tar.extractall(path='/other/folder')
编辑:如果只想知道"sampleFolder"
存档中包含的名称,则不必提取某个位置。您应该使用getnames
:
tar.getnames()
请注意,tarball中可以包含多个文件或文件夹。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句