我从文件夹(和子文件夹)创建Zip文件。它工作正常,并创建一个新的.zip文件,但我使用glob.glob时遇到问题。它正在读取所需文件夹(源文件夹)中的所有文件并写入新的zip文件,但问题是,它添加了子目录,但没有从子目录添加文件。使用glob.glob创建Zip文件的问题
我给予用户选择文件名和路径以及文件类型(Zip或Tar)的选项。我在创建.tar.gz文件时不会遇到任何问题,但在使用创建.zip文件时,会遇到此问题。
这里是我的代码:
for name in (Source_Dir):
for name in glob.glob("/path/to/source/dir/*"):
myZip.write(name, os.path.basename(name), zipfile.ZIP_DEFLATED)
myZip.close()
另外,如果我用下面的代码:
for dirpath, dirnames, filenames in os.walk(Source_Dir):
myZip.write(os.path.join(dirpath, filename) os.path.basename(filename))
myZip.close()
现在第二个代码TAKS所有文件,即使该文件夹/文件夹内,创建一个新的.zip文件并在没有任何目录结构的情况下写入。它甚至不需要主文件夹的dir结构,只需将主目录或子目录中的所有文件写入该.zip文件即可。
任何人都可以请帮我或建议我。我更喜欢glob.glob而不是第二个选项来使用。
在此先感谢。
问候, 阿卡什