当我们需要对某个文件夹下的所有文件或文件夹进行操作时,我们需要对其进行搜索。在Python中,我们可以使用os
模块来进行文件搜索。下面是搜索文件夹下所有文件和文件夹的完整攻略:
1. 使用os.listdir方法
os.listdir
方法可返回指定目录下的所有文件名和目录名。我们可以递归地使用该方法来迭代搜索文件夹下所有的文件和文件夹。以下是一段代码示例:
import os
def search_files(path):
if os.path.isfile(path):
print(path)
else:
for file_name in os.listdir(path):
sub_path = os.path.join(path, file_name)
search_files(sub_path)
search_files('path/to/directory')
在以上代码中,我们首先判断 path
是否是文件。如果是,则直接输出;否则遍历其下的所有子文件和子文件夹,再递归地调用search_files
方法。
2. 使用os.walk方法
os.walk
方法可以生成文件夹中的文件名和目录名,在对某个目录进行搜索时,我们可以使用 os.walk
方法遍历所有子目录,这样可以更快捷地搜索到相关文件。以下是一段代码示例:
import os
def search_files(path):
for root, _, files in os.walk(path):
for file_name in files:
print(os.path.join(root, file_name))
search_files('path/to/directory')
以上代码中,我们使用 os.walk
方法返回指定目录下所有文件名和目录名,其中 root
是当前目录, files
则是当前目录下的所有文件名。我们遍历所有文件名,使用 os.path.join
方法将其与 root
拼接为完整的文件路径,最后输出即可。
以上就是Python搜索文件夹下所有文件和文件夹的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python搜索文件夹下的所有文件或文件夹 - Python技术站