创建一个包含 2 个 CSV 的 Zip

问题描述 投票:0回答:1

我正在将 2 个数据框导出为 csv,就像这些:

data1 = {'isin':['isin1','isin2','isin3'],'ticker_QF':['ticker1','ticker3','ticker3']}

df_QF = pd.DataFrame(data1)

data2 = {'isin':['isin1','isin1','isin2','isin3'],'ticker_BBG':['ticker1','ticker3','ticker4','ticker5']}
df_BBG = pd.DataFrame(data2)

如果我想创建一个包含 csv 的 zip 文件夹,我该怎么做? 预先感谢

python csv pandas zip
1个回答
6
投票

您可以使用 Python 的

zipfile
库来帮助解决此问题,如下所示:

import pandas as pd
import zipfile

data1 = {'isin':['isin1','isin2','isin3'],'ticker_QF':['ticker1','ticker3','ticker3']}
data2 = {'isin':['isin1','isin1','isin2','isin3'],'ticker_BBG':['ticker1','ticker3','ticker4','ticker5']}

with zipfile.ZipFile('my_csvs.zip', 'w') as csv_zip:
    csv_zip.writestr("data1.csv", pd.DataFrame(data1).to_csv())
    csv_zip.writestr("data2.csv", pd.DataFrame(data2).to_csv())

这将生成一个名为

my_csvs.zip
的 zip 文件,其中包含两个 CSV 文件。此外,CSV 文件是直接在 ZIP 文件内创建的,不会创建其他文件。

在 Python 3.7.3 中测试

© www.soinside.com 2019 - 2024. All rights reserved.