如何用Python检查目录中是否有txt文件?
我想用Python检查一个特定的文件夹里是否存在某个文件。
大概是这样的;
if os.path.exists('*.txt'):
# true --> do something
else:
# false --> do something
4 个回答
0
os.listdir() 这个函数可以让你获取一个文件夹里面的所有东西,包括文件和子文件夹。
import os
if not os.listdir(dir):
#do something
else:
#do something
5
你可以使用 glob.iglob
配合 next
来实现:
import glob
if next(glob.iglob('*.txt'), False):
#do something
else:
#do something else
在这里,如果 glob.iglob
返回的是一个空的迭代器,那么默认值 False
就会被使用。
或者像 @user2357112 在评论中提到的,我们也可以简单地使用 any
,因为它在遇到空的可迭代对象时会返回 False
:
if any(glob.iglob('*.txt')):
#do something
else:
#do something else
7
你可以使用 glob.glob
这个功能,配合通配符来查找文件,并检查它是否返回了任何结果。比如说:
import glob
if glob.glob('*.txt'):
# file(s) exist -> do something
else:
# no files found
需要注意的是, glob.glob
会返回一个符合通配符的文件列表(如果没有找到文件,则返回一个空列表)。