我正在编写一个跟踪农场中动物的程序,我希望能够通过例如名称,性别,年龄等来搜索动物,这些都是对象的属性。我对Python完全陌生,因此非常感谢所有帮助。
这是到目前为止我所拥有的代码,但是它只会将要搜索的属性广告到列表中,然后打印出来。我希望能够将整个对象添加到列表中,并通过该列表打印整个对象。
class Djur:
def __init__(self, art, namn, ålder, kön, gravid):
self.art = art
self.namn = namn
self.age = ålder
self.gender = kön
self.gravid = gravid
def __str__(self):
return ("Art: " + str(self.art) + " " + "\n"
"Namn: " + str(self.namn) + " " + "\n"
"Ålder: " + str(self.age) + " " + "\n"
"Kön: " + str(self.gender) + " " + "\n"
"Gravid: " + str(self.gravid))
def __repr__(self):
return str(self)
try:
val2 = input("Ange sök-text")
l=[]
for x in djurlista:
y = x.art or x.gender or x.namn or x.gravid or x.age
if y == val2:
l.append(x.art)
print(l)
meny()
except ValueError:
print("Var god välj ett giltigt alternativ!")
答案 0 :(得分:0)
要使用对象创建列表,只需编写l.append(x)
而不是l.append(x.art)
。现在,您只需追加属性art
。