我正在尝试使用 Python 3 创建一个函数,该函数使用函数式编程风格删除指定目录中的空目录。
不幸的是,我的尝试没有成功,因此我将不胜感激任何帮助、指导和建议。
我试图让函数执行的示例:
前...
-folder/
|-empty1/
|-empty2/
|-not_empty1/
|-file
|-not_empty2/
|-file
后...
-folder/
|-not_empty1/
|-file
|-not_empty2/
|-file
这是我确定会起作用但没有起作用的方法:
# folder - absolute path to directory that may contain empty directories
def cleanup(folder):
from os import listdir, rmdir, path
ls = listdir(folder)
ls = map(lambda f: path.join(folder, f), ls)
folders = filter(lambda f: path.isdir(f), ls)
map(lambda x: rmdir(x), folders)
谢谢!
编辑:
list(map(...))
删除了第一个映射用于调试print
语句的末尾的额外括号path.join()
上移行path.isdir()
将问题的标题从“... Python 3 in FP style”更改为正如评论中指出的那样,这不是 FP 的正确实现和应用