如何使用 tkinter 列出选定目录和子目录中所有文件的名称。这是我的代码.
def openDirectory(self):
self.dirname = tkFileDialog.askdirectory(parent=self.root,
initialdir='/home/', title='Select your database' )
self.files=os.listdir(self.dirname)
print self.files
它只是列出目录中的文件。 如果目录包含子目录,则给出错误消息 。我想列出目录和子目录文件名的所有文件。
两件事:
os.listdir
应为您提供指定路径中所有项目的名称。这包括文件和目录:https://docs.python.org/2/library/os.html#os.listdir。如果你想从os.listdir
获取完整路径,你可以尝试
self.files = [os.path.join(self.dirname, item) for item in os.listdir(self.dirname)]
-
另一个选项是使用模块
glob
。如果您glob.glob
提供完整路径,它也应该为您提供所有项目的列表。例如:from glob import glob ... self.files = glob(os.path.join(self.dirname, '*'))