python遍历子目录
时间: 2023-10-29 08:54:35 浏览: 44
你可以使用 `os.walk()` 函数来遍历子目录。以下是一个示例代码:
```python
import os
def traverse_subdirectories(directory):
for root, dirs, files in os.walk(directory):
for file in files:
filepath = os.path.join(root, file)
print(filepath)
# 调用函数并传入目录路径
traverse_subdirectories('path/to/directory')
```
在上面的代码中,`os.walk()` 函数会返回一个生成器,可以迭代每个子目录中的文件。`root` 是当前遍历的目录,`dirs` 是当前目录下的子目录列表,`files` 是当前目录下的文件列表。通过使用 `os.path.join()` 函数将当前目录和文件名拼接在一起,可以得到完整的文件路径。然后,你可以根据需要对文件执行相应操作,这里只是简单地打印文件路径。
记得将 `'path/to/directory'` 替换为你要遍历的实际目录路径。
相关问题
使用Python遍历文件夹目录
在Python中,可以使用os模块来遍历文件夹目录。下面是一个简单的示例代码:
```python
import os
def traverse_folder(directory):
for root, dirs, files in os.walk(directory):
for file in files:
file_path = os.path.join(root, file)
print(file_path)
# 调用函数遍历指定目录
traverse_folder('/path/to/directory')
```
上述代码中,`os.walk()`函数可以递归地遍历指定目录及其子目录中的所有文件和文件夹。它返回一个生成器对象,每次迭代时返回一个三元组`(root, dirs, files)`,其中`root`表示当前遍历的文件夹路径,`dirs`表示当前文件夹下的子文件夹列表,`files`表示当前文件夹下的文件列表。
通过使用`os.path.join()`函数,可以将当前文件夹路径和文件名拼接成完整的文件路径。在上述示例中,我们使用`print()`函数打印出了每个文件的完整路径。
python遍历多级目录
在Python中,可以使用递归方法来遍历多级目录。递归是指函数调用自身的过程,通过递归,可以很方便地遍历多级目录中的所有文件和子目录。下面是一个示例代码,展示了如何使用递归来实现目录遍历:
```python
import os
def show_files(base_path, all_files=[]):
"""
遍历当前目录所有文件及文件夹
:param base_path:
:param all_files:
:return:
"""
file_list = os.listdir(base_path)
for file in file_list:
cur_path = os.path.join(base_path, file)
if os.path.isdir(cur_path):
show_files(cur_path, all_files)
else:
all_files.append(cur_path)
return all_files
# 调用示例
base_path = '/path/to/dir' # 设置要遍历的目录路径
files = show_files(base_path)
for file in files:
print(file)
```
这段代码中,`show_files`函数使用了递归方法遍历指定目录下的所有文件和子目录。通过`os.path.join()`函数可以拼接路径,通过`os.path.isdir()`函数可以判断是否是目录。在遍历过程中,将每个文件的路径存入`all_files`列表中并返回。
注意,递归方法需要谨慎使用,避免出现无限递归的情况。在编写递归函数时,需要确保有正确的终止条件,以避免进入无限循环。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)