我只搜索 .txt 文件
from glob import glob
result = glob('*.txt')
>> result
['text1.txt','text2.txt','text3.txt']
但我想要没有文件扩展名的结果
>> result
['text1','text2','text3']
是否有一个正则表达式模式可以与 glob 一起使用以从输出中排除文件扩展名,或者我是否必须对 result 使用列表理解?
请您参考如下方法:
glob() 无法做到这一点,您需要获取给定的列表,然后创建一个新的列表来存储没有扩展名的值:
import os
from glob import glob
[os.path.splitext(val)[0] for val in glob('*.txt')]
os.path.splitext(val) 将文件名拆分为文件名和扩展名。 [0] 仅返回文件名。
