【问题标题】:Filter list of class by property value in python在python中按属性值过滤类列表
【发布时间】:2020-03-31 22:32:36
【问题描述】:
我有这门课……
class Folder:
def __init__(self,name,path,id):
self.name = name
self.path = path
self.id = id
然后我创建了一个上述类的 x 编号的列表,我如何查询该列表并从该类“文件夹”列表中选择一个与某个 id 匹配的类,然后打印出该类的“名称”属性找到课程了吗?
我该怎么做?
【问题讨论】:
标签:
python-3.x
list
filter
【解决方案1】:
这就是你要找的吗?
class Folder:
def __init__(self,name,path,_id):
self.name = name
self.path = path
self.id = _id
#create dummy objects
f1 = Folder("item1",'/path1',10)
f2 = Folder("item2",'/path2',20)
f3 = Folder("item3",'/path3',30)
#create list
files = [f1,f2,f3]
def query(_list,_id):
for l in _list:
if l.id == _id:
return(l.name)
return "Folder with id no.{} not found".format(_id)
希望这有帮助!非常幼稚的方法,但确实有效。