我正在做一个在windows中遍历目录和查找文件的项目。
for element in os.listdir(path):
new_path = os.path.join(path, element)
if os.path.isdir(new_path):
pass
elif os.path.isfile(new_path):
pass
else:
pass
现在我很好奇的是,windows或其他操作系统是否有其他树元素,如果没有,检查边缘情况是否仍然是个好主意?
1条答案
按热度按时间8yparm6h1#
检查path module documentation,我发现有多个 predicate :
isfile()
isdir()
islink()
然而,当
islink()
是true
时,isdir()
和isfile()
中的一个也是true
(因为它们都遵循符号链接)。你必须小心,当路径中没有文件或目录时,两者都是
false
。你可以使用exists()
来验证。但是在你的例子中,路径指向现有的项,因为你是从listdir()
中获得它们的。