0

有很多方法可以搜索包含字符串的目录,这不是我的问题。但是有没有为 Python Kivy 内置的东西,它允许在带有子目录的目录中自动搜索文件 (*.mp3),还是我必须自己创建一个?如果必须这样做,如何获取目录中的所有文件和子目录?

谢谢 :)

最后我决定自己编写所需的函数:

import os
def listfiles(path):
     files = []
     for base, directory, filename in os.walk(path):
          for i in range(len(filename)):
               files.append(base+"/"+filename[i])
     return files
print(listfiles("/path/path/"))

检查文件的扩展名应该很容易:)

不幸的是,对于更大的目录,这个过程可能需要很长时间,所以我仍在寻找不同的解决方案。

4

2 回答 2

1

查看 Kivykivy.uix.filechooser FileChooserController及其方法files

应用过滤器后由路径指定的目录中的文件列表。

files 是一个只读的 ListProperty。

@编辑

这是我在 Kivy 文档中也发现的内容,这个看起来更好:

from kivy.uix.filechooser import FileSystemLocal
file_system = FileSystemLocal()
file_system.listdir('/path/to/dir')   # this returns a list of files in dir

如果您不打算只浏览本地文件,FileSystemLocal也可以使用。FileSystemAbstract

于 2015-08-15T15:03:01.647 回答
0
files = [] # list with files in directory
suff = ('.mp3', '.wav')
for i in files:
    if i.endswith(suff):
        print files

后缀需要是元组才能工作。

于 2017-02-15T08:58:29.663 回答