正在读取 python 中文件夹发生变化的新文件

Reading new file with change in folder in python

我正在使用 import os 库处理当前目录中的所有文件夹。但是,我需要程序在每次开始遍历目录中的新文件夹时询问文件名或路径。 例子: 假设目录中有两个文件夹即:

  1. 电平控制
  2. 级别变化。

当程序遍历 Level Control 文件夹时,它应该读取文件 a.txt。当遍历 Level Change 文件夹时,它应该读取文件 b.txt。还假设这两个文件都在同一目录中。

通过查看您的描述,以下代码应该可以工作 (Python 3.x),但是您的描述中没有提到某些情况(例如如何处理包含文件夹和文件的文件夹),所以你可能需要做一些修改。

import os

def walk(root):
    dirs = []
    for item in os.listdir(root):
        if os.path.isdir(os.path.join(root,item)):
            dirs.append(item)
    if len(dirs) > 0:
        for n,d in enumerate(dirs):
            print(f'[{n}] : {d}')
        folder = input('which folder ? ')
        path = os.path.join(root, folder)
        if os.path.isdir(path):
            walk(path)
        print('Invalid path')
    else:
        for file in os.listdir(root):
            print(f'read : {file}')
    
walk('.')

您可以使用os.listdir()代替os.walk(),因为您需要根据当前目录中的内容进行操作。