D:\szh\noses文件夹下有子文件夹和文件

 

with tarfile.open('E:\\szh.tar', "w") as tar:

    tar.add('D:\\szh\\noses'))

压缩包第一层文件夹为szh,下面才是noses

with tarfile.open('E:\\szh.tar', "w") as tar:

    tar.add('D:\\szh\\noses', arcname='')

压缩包直接就是noses下的文件和子文件夹

with tarfile.open('E:\\szh.tar', "w") as tar:

    tar.add('D:\\szh\\noses', arcname=os.path.basename('D:\\szh\\noses'))

压缩包第一层是noses,这也是比较符合一般情况的