python读取二级文件夹中的txt文件
时间: 2023-08-08 16:04:28 浏览: 56
可以使用Python中的os和glob库来读取二级文件夹中的txt文件。以下是一个示例代码:
```python
import os
import glob
# 定义二级文件夹路径
folder_path = 'path/to/folder'
# 获取所有二级文件夹路径
subfolders = [f.path for f in os.scandir(folder_path) if f.is_dir()]
# 遍历所有二级文件夹并读取其中的txt文件
for subfolder in subfolders:
txt_files = glob.glob(os.path.join(subfolder, '*.txt'))
for txt_file in txt_files:
with open(txt_file, 'r') as f:
content = f.read()
# 处理txt文件内容
# ...
```
以上代码首先获取所有二级文件夹路径,然后遍历所有二级文件夹并使用glob库获取其中的txt文件路径,最后使用Python内置的open函数读取txt文件内容。您可以根据需要自定义处理txt文件内容的代码。
相关问题
帮我写一段python代码,读取path_list三级文件夹中的文件,输出的文件的时候要输出一列来显示文件属于哪个一级文件夹,只显示出一级文件夹
好的,我们可以使用类似的方法来读取三级文件夹中的文件,并输出一级文件夹名称。假设你的一级文件夹路径为`root_path`,下面有多个二级文件夹,每个二级文件夹下又有多个三级文件夹,每个三级文件夹下又有多个文件,你可以使用如下代码实现:
```python
import os
root_path = '/path/to/root/folder'
for folder in os.listdir(root_path):
folder_path = os.path.join(root_path, folder)
if os.path.isdir(folder_path):
for sub_folder in os.listdir(folder_path):
sub_folder_path = os.path.join(folder_path, sub_folder)
if os.path.isdir(sub_folder_path):
for file_name in os.listdir(sub_folder_path):
file_path = os.path.join(sub_folder_path, file_name)
if os.path.isfile(file_path):
print('{}\t{}'.format(folder, file_name))
```
这段代码首先遍历了总文件夹下的所有一级文件夹,再遍历每个一级文件夹下的所有二级文件夹,最后遍历每个二级文件夹下的所有三级文件夹,并输出文件所属的一级文件夹名称和文件名。其中`\t`表示输出时使用制表符分隔两个字段。你可以根据需要修改输出的格式。
帮我写一段python代码,读取多个三级文件夹中的文件,输出的文件的时候要输出一列来显示文件属于哪个一级文件夹,只显示出一级文件夹
好的,我们可以使用类似的方法来读取多个三级文件夹中的文件,并输出一级文件夹名称。假设你需要读取的三级文件夹路径列表为`folder_list`,每个三级文件夹下又有多个文件,你可以使用如下代码实现:
```python
import os
folder_list = ['/path/to/folder1', '/path/to/folder2', '/path/to/folder3']
for folder_path in folder_list:
for sub_folder in os.listdir(folder_path):
sub_folder_path = os.path.join(folder_path, sub_folder)
if os.path.isdir(sub_folder_path):
for file_name in os.listdir(sub_folder_path):
file_path = os.path.join(sub_folder_path, file_name)
if os.path.isfile(file_path):
print('{}\t{}'.format(os.path.basename(folder_path), file_name))
```
这段代码首先遍历了三级文件夹路径列表中的每个路径,然后遍历每个三级文件夹下的所有二级文件夹,最后遍历每个二级文件夹下的所有文件,并输出文件所属的一级文件夹名称和文件名。其中`os.path.basename(folder_path)`表示获取文件夹路径中的最后一级名称作为一级文件夹名称,`\t`表示输出时使用制表符分隔两个字段。你可以根据需要修改输出的格式。