将变量传递给 zipfile NAME

Passing variable to zipfile NAME

我想从一个名为 file_path 的变量分配给我的 zipfile,我该怎么做?我尝试了下面的代码,这一行就是问题所在:

with ZipFile('%s.zip' %(file_path,),'w') as zip:

没有任何反应;我没有收到任何错误,只是 Python 没有创建 .zip 文件。这是所有代码。

import os
from zipfile import ZipFile 

file_paths = [] 


basepath = 'my_directory/'
with os.scandir(basepath) as entries:
    for root, directories, files in os.walk(basepath):
        for entry in entries:

            if entry.is_file():
                file_path = os.path.join(entry)
                file_paths.append(file_path)

                with ZipFile('%s.zip' %(file_path,),'w') as zip:
                    print("FILE:", entry.name)
                    for entry in file_paths:
                        zip.write(entry)

我在做其他事情时偶然发现了这个未回答的查询,一个简单的解决方法是使用 .format,如下所示

with ZipFile('{}.zip'.format(d),'w') as zip: