在PySide中,当我使用QDirIterator时,如何按名称对文件进行过滤?
在文档中,它讨论了参数nameFilters
但是,当我尝试它时,它不会按扩展名过滤文件:
from PySide import QtCore
it = QtCore.QDirIterator('.', nameFilters=['*.py'])
while it.hasNext():
print it.next()
>> ./.
>> ./..
>> my_script.py
>> another_file.txt使用这段代码,我希望只获得扩展名为.py的文件。
发布于 2016-09-10 20:27:33
nameFilters参数不是关键字参数。
不幸的是,如果传递不存在的关键字参数,PySide就不会引发错误,这是一个非常糟糕的设计。当给定无效的输入时,API不应该无声地失败。
无论如何,如果使用位置参数,代码将正确工作:
it = QtCore.QDirIterator('.', ['*.py'])https://stackoverflow.com/questions/39429800
复制相似问题