为了画pyqt5的treewidget文件夹树.需要先获得一定结构的文件夹名字列表.虽然有treeview可以用model.但我其它部分都写好了,不想改了控件了. 代码 l=[] def dir_level(Path): for root, dirs, files in os.walk(Path): d = [] level = root.replace(Path, '').count(os.sep) num = '-' * level d.append(level) root1=os.path.split(root) d.append(num+root1[1]) num= '-' * (level + 1) l.append(d) for f in files: d = [] d.append(level+1) d.append(num+f) l.append(d) dir_level(r"D:\wsxiangmu\widget") print (l) for i in l: print (i)
结果
[[0, 'widget'], [1, '-builtins.py'], [1, '-新建文件夹11'], [2, '--111'], [3, '---1111'], [3, '---1112'], [2, '--112'], [1, '-新建文件夹12'], [2, '--121'], [2, '--122'], [3, '---131.py']]
[0, 'widget']
[1, '-builtins.py']
[1, '-新建文件夹11']
[2, '--111']
[3, '---1111']
[3, '---1112']
[2, '--112']
[1, '-新建文件夹12']
[2, '--121']
[2, '--122']
[3, '---131.py']