使用python从部分文件名创建数组

2024-09-30 10:34:55 发布

您现在位置:Python中文网/ 问答频道 /正文

例如,我有一个csv文件目录

c:\data

将包含以下文件

ext-FLA-1.csv

ext-KDY-1.csv

etx-EIR-1.csv

我只想提取每个文件的大写字母数组。你知道吗

files = glob.glob('c:\\data/*.csv')

会给我一个所有csv文件的数组。但是,我希望文件数组只包含

files = ['FLA','KDY','EIR']

Tags: 文件csvdatafiles数组大写字母extglob
1条回答
网友
1楼 · 发布于 2024-09-30 10:34:55

您可以使用regexp:

import re
import os
files = [os.path.abspath(f) for f in os.listdir('c:\\data') if re.search(r'[A-Z]+.*\.csv$', f)]

或者如果你只需要大写字母:

import re
import os
files = [re.findall(r'[A-Z]+', f)[0] for f in os.listdir('c:\\data') if re.search(r'.csv$', f)]

相关问题 更多 >

    热门问题