Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python装载文件系统的方法_Python_Python 2.6 - Fatal编程技术网

python装载文件系统的方法

python装载文件系统的方法,python,python-2.6,Python,Python 2.6,这就是我如何在python中枚举挂载的文件系统的方法: for line in open("/etc/mtab"): mount_point = line.split()[1] if mount_point.startswith('/foo/bar'): ... 有更好、更干净或更简单的方法吗?我在标准模块(os、stat、statvfs等)中没有找到任何内容。您可能希望将结果收集到列表理解中,而不是for循环中 您提供的代码示例: collection = [

这就是我如何在python中枚举挂载的文件系统的方法:

for line in open("/etc/mtab"):
    mount_point = line.split()[1]
    if mount_point.startswith('/foo/bar'):
        ...

有更好、更干净或更简单的方法吗?我在标准模块(os、stat、statvfs等)中没有找到任何内容。

您可能希望将结果收集到列表理解中,而不是for循环中

您提供的代码示例:

collection = [line.split()[1] for line in open("/etc/mtab")
              if line.split()[1].startswith('/foo/bar')]
这将创建一个以“/foo/bar”开头的所有挂载点的列表,速度更快

如果您只想对它们进行迭代,请改用生成器表达式:

collection = (line.split()[1] for line in open("/etc/mtab")
              if line.split()[1].startswith('/foo/bar'))

您可能希望列出一些情况,即装载的文件系统最终不在
/etc/mtab
中。你可以。