gpt4 book ai didi

python - 列表追加错误

转载 作者:太空宇宙 更新时间:2023-11-03 17:29:05 24 4
gpt4 key购买 nike

我在第 17 行“Comps.append(Props(look))”上收到错误。

我正在尝试在“记录”列表中搜索某个项目是否存在,如果它不在列表中,则将其 append 到末尾。

有人可以帮忙吗?

class Props(object):
def __init__(self, Name = None):
self.Name = Name

a = '111'
Comps = []
Comps.append(Props('aaa'))
Comps.append(Props('bbb'))
Comps.append(Props(a))

look = 'ccc'
for Props in Comps:
if look in Props.Name:
print 'Found Duplicate - ', look
break
else:
Comps.append(Props(look)) # TypeError: 'Props' object is not callable

for Props in Comps:
print (Props.Name)

最佳答案

您在第 17 行之前重载了 Props 的含义,如下:

for Props in Comps:

由于 Props 是一个类,因此您也不应该将其用作迭代器。相反:

class Props(object):
def __init__(self, Name = None):
self.Name = Name

a = '111'
Comps = []
Comps.append(Props('aaa'))
Comps.append(Props('bbb'))
Comps.append(Props(a))

look = 'ccc'
for el in Comps:
if look in el.Name:
print 'Found Duplicate - ', look
break
else:
Comps.append(Props(look))

for el in Comps:
print (el.Name)

您还可以简化整个搜索/追加操作:谢谢乔恩!

if not any(el.Name == look for el in Comps): Comps.append(Props(look))

关于python - 列表追加错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32151084/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com