使用glob匹配没有文件扩展名的文件



我试图使用glob来匹配文件夹中的所有文件。所有的文件都以相同的单词开头,但我忘了在它们的末尾包含。txt。有没有一种方法来编写代码,以获得所有这些文件,尽管事实上没有文件扩展名在我的目录?

我假设您想从您表达问题的方式添加.txt文件扩展名。可以在全局表达式

的任何位置使用通配符(*)。
import glob
import shutil
for file in glob.glob('/path/to/files/commonWord*'):
shutil.move(file, file + '.txt')

不确定这是否是您想要的,但这将获得所有以单词"california"开头的文件/文件夹;

如果没有以"california"开头的文件夹在你的目录中,这会这样做

import glob, os
for file_ in glob.glob('california*'):
os.rename(file_, file_+'.csv')

output1:['california_housing_train', 'california_housing_test']

output2:['california_housing_train.csv', 'california_housing_test.csv']

你可以把它们全部取走,然后用正则表达式检查它是否有扩展名,并将文件添加到列表或任何你想要的。

import glob
import re
files = glob.glob('*')
for file in files:
if not re.findall(r'.*.[a-z]+',file):
print(file)

最新更新