问题描述
我尝试压缩文件,我使用了https://thispointer.com/python-how-to-create-a-zip-archive-from-multiple-files-or-directory/
中的示例with ZipFile('sample2.zip','w') as zipObj2:
# Add multiple files to the zip
zipObj2.write('sample_file.csv')
sample2.zip
已创建,但为空。当然csv
文件存在并且不为空。
- 我从Jupyter Notebook运行此代码
编辑:我正在使用相对路径-
input_dir = "../data/example/"
with zipfile.ZipFile(os.path.join(input_dir,'f.zip'),'a') as zipObj2:
zipObj2.write(os.path.join(input_dir,'f.tif'))
解决方法
您的问题让我有些困惑,但是如果我没错,这听起来像是您要在单个压缩文件中放置多个CSV文件?如果是这样,这就是您要寻找的:
#initiate files variable that contains the directory from which you wish to zip csv files
files=[f for f in os.listdir("./your_directory") if f.endswith('.csv')]
#initalize empty DataFrame
all_data = pd.DataFrame()
#iterate through the files variable and concatenate them to all_data
for file in files:
df = pd.read_csv('./your_directory' + file)
all_data = pd.concat([all_data,df])
然后调用新的DataFrame(all_data)以验证内容是否已传输。
,您试图关闭zip文件进行保存?
from zipfile import ZipFile
with ZipFile('sample2.zip','w') as zipObj2:
zipObj2.write('sample_file.csv')
zipObj2.close()