Python的文件系统抽象

2021-06-16 11:39:06

看看一个简单的用例。以下功能使用pyfilesystem API计算目录(和任何子目录)中Python代码的非平衡线的数量:

def count_python_loc(fs):"""计算非空行的python代码。""" fs.walk.files中的路径计数= 0(filter = [' *。py']):使用fs.open(路径)作为python_file:count + = sum(1在python_file中为line .strip())返回计数

上面的代码可以与任何文件系统一起使用,这里只是一些例子:

def count_python_loc(路径):"""计算非空行的Python代码。""" count = 0 for root,dirs,os.walk中的文件(路径):用于文件中的名称:如果name.endswith(' .py'):with open(os.path.join(root,name ),' rt')作为python_file:count + = sum(1 for with python_file,如果line.strip())返回计数

此版本只能与本地驱动器一起使用。任何其他档案系统都需要不同的API并可能重新实现OS.Walk的功能。