如何从Python目录中读取n个文件?

时间:2017-08-23 13:18:28

标签: bash python-3.x directory pyqt5

我正在做一个需要选择给定文件夹的PyQT5应用程序,并列出其中的所有文件和目录。

要获取路径,我使用简单的方法,如下所示:

def open_path():
    dialog = QFileDialog()
    folder_path = dialog.getExistingDirectory(None, "Select Folder")
    return folder_path

修改

这是我获取根,目录和文件的方式

import os

# this is where I have my open_path() method defined, so I don't write it again

path = str(open_path())
roots = next(os.walkpath(path))[0]
dirs = next(os.walkpath(path))[1]
files = next(os.walkpath(path))[2]

我有一个包含大约11000个文件的文件夹。我使用QFileDialog获取文件夹,并将其拆分为3个列表(根,目录,文件),并使用QDir显示它。

由于它的大小,我想限制QDir只显示前1000个文件,在达到1000之后可以加载更多文件。

这可能吗?怎么做?

我无法找到有关如何实现此类过滤器的任何文档或示例。

我在网上到处搜索这些信息,但只找到了这个解决方案 - > How to read first n-th files from directory (pleaso NOT a "head -n solution")? 哪个涉及bash脚本?

我想尽量避免使用Popen和PIPE。

欢迎任何帮助或提示。

谢谢。

1 个答案:

答案 0 :(得分:0)

$ErrorActionPreference = 'Stop'

这里parent_list包含给定目录中的所有文件,您可以使用循环访问列表中的前1000个文件。 child是目录中的文件