我正在尝试在目录中查找文本文件的关键字,然后使用Python查找文件的全名。
将此关键字设为'file'
,但目录中的此文本文件称为'newfile'
。
我正在尝试找出整个文件的名称,以便能够打开它。
答案 0 :(得分:3)
import os
keyword = 'file'
for fname in os.listdir('directory/with/files'):
if keyword in fname:
print(fname, "has the keyword")
答案 1 :(得分:0)
您可以使用fnmatch
。来自文档:
此示例将使用扩展名.txt打印当前目录中的所有文件名:
import fnmatch
import os
for filename in os.listdir('.'):
if fnmatch.fnmatch(filename, '*.txt'):
print filename
从您的示例中,您需要fnmatch(filename, '*file*')
。
e.g:
>>> from fnmatch import fnmatch
>>> fnmatch('newfile', '*file*')
True
>>> fnmatch('newfoal', '*file*')
False
答案 2 :(得分:-1)
使用grep,您可以找到包含您要查找的单词的文件。
grep -r 'word' FOLDER
-r表示grep在'word'
的所有文件中查找FOLDER