import tarfile
#path为.tar压缩包所在的文件夹,比如说我的
path = r'C:\Users\Administrator\Desktop\pythonProject\zip_test.tar'
#创建tfile对象
tfile = tarfile.TarFile(path,'r')#r为读取模式
print(tfile.getnames())#这个会把压缩包下面所有子文件夹的路径返回成一个列表
#列表推导式,比如我想提取压缩包下面子目录文件夹下面所有的txt文件。
tfile.extracall(members=[tfile.getmember(path_) for path_ in tfile.getnames() if path_.split('.')[-1]=='txt'])
#其中tfile.getmember(path_)为返回的TarInfo对象
下面这个是我的压缩文件目录,比如要提取这个目录下的所有.txt文件