Python 从Zipfile读取以字符串开头的CSV

Python 从Zipfile读取以字符串开头的CSV,python,csv,zipfile,Python,Csv,Zipfile,我试图循环遍历一个包含zip文件的文件夹,并且只提取以某个前缀开头的csv文件 代码如下: for name in glob.glob(path + '/*.zip'): zf = zipfile.ZipFile(name) csv_file = pd.read_csv(zf.open('Common_MarketResults*.csv')) df = pd.concat(csv_file, axis=0).reset_index() csv文件在我使用的字符串之后有

我试图循环遍历一个包含zip文件的文件夹,并且只提取以某个前缀开头的csv文件

代码如下:

for name in glob.glob(path + '/*.zip'):
    zf = zipfile.ZipFile(name)
    csv_file = pd.read_csv(zf.open('Common_MarketResults*.csv'))
    df = pd.concat(csv_file, axis=0).reset_index()
csv文件在我使用的字符串之后有一些日期,这在每个zip文件中都是不同的。我收到以下错误消息:


KeyError:“归档文件中没有名为“Common_MarketResults*.csv”的项目”

在文件名中搜索子字符串使这成为可能

sub = 'Common_MarketResults'
suf = 'csv'
data = []

for name in glob.glob(path + '*.zip'):
    zf = zipfile.ZipFile(name)
    zf_nfo = zipfile.ZipFile(name).namelist()
    for s in zf_nfo:
        if sub in s and suf in s:
            csv_file_str = s
    csv_file = pd.read_csv(zf.open(csv_file_str))
    csv_file['file_name'] = csv_file_str
    data.append(csv_file)

zf.open('Common_MarketResults*.csv')
中的通配符
*
用作普通符号'*'。