如何查找所有特定扩展名的文件?
我想用Python在一个文件夹里找到所有的.c
文件。
我写了这个代码,但它返回给我的却是所有文件,而不是只有.c
文件:
import os
import re
results = []
for folder in gamefolders:
for f in os.listdir(folder):
if re.search('.c', f):
results += [f]
print results
我该怎么做才能只得到.c
文件呢?
15 个回答
7
KISS
# KISS
import os
results = []
for folder in gamefolders:
for f in os.listdir(folder):
if f.endswith('.c'):
results.append(f)
print results
33
试试“glob”:
>>> import glob
>>> glob.glob('./[0-9].*')
['./1.gif', './2.txt']
>>> glob.glob('*.gif')
['1.gif', 'card.gif']
>>> glob.glob('?.gif')
['1.gif']
51
试着把里面的循环改成这样
results += [each for each in os.listdir(folder) if each.endswith('.c')]