我有两个班,名为“Pussa”和“Cat”。 Pussa有一个int属性idPussa,而Cat类有两个属性,一个“Pussa”列表和一个int catNum。每个类都有一些方法,__init__
。所以,我要这样做
“(f)现在,我们的猫感染了”Pussa“。将4个Pussa物品放在列表中的所有偶数猫上。 首先生成具有连续数字的20个所需Pussa对象。 然后将Pussa对象的引用复制到相应的猫。“
我已经完成了这段代码,但我真的不知道如何继续......今年我刚刚开始使用Python而且我迷失了。
listPussa = []
for x in range(1,21):
x = Pussa(x)
listPussa.append(x)
for cat in cats: #cats is a list of 20 cat objects
if cat.getcatNum()%2 != 0:
for i in range(21):
cat.addPussa(i)
i = i +1
Pussa课程的定义是:
class Pussa:
''' Class Pussa '''
# (a) Define a private attribute idPussa
def __init__(self, idPussa = None):
self.__idPussa = idPussa
# (b) Define a __str__ method that
def __str__(self):
self.__idPussa = idPussa
if idPussa is None:
return "Pussa sin número."
else:
return "Pussa número = " + idPussa
# (c) Define setIdPussa
def setIdPussa(self, idPussa):
self.__idPussa = idPussa
# (c) Define getIdPussa
def getIdPussa(self):
return self.__idPussa
班级Cat:
class Cat:
''' Class cat '''
# (a) Define the init method with a private attribute called catNum and a list of pusses
def __init__(self, catNum = None, listPussa = []):
self.__catNum = catNum
self.listPussa = listPussa
# (b) Define the mixeta method
def mixeta(self):
if len(self.listPussa) is 0:
return "Miau!", self.getcatNum(), "La llista de pusses esta buida"
else:
for pussa in self.listPussa:
return pussa.getIdPussa()
return "Miau!", self.getcatNum(), "El nombre total de pusses es ", len(self.listPussa)
# (c) Define the setter function for catNum
def setcatNum(self, catNum):
self.__catNum = catNum
# (c) Define the getter function for catNum
def getcatNum(self):
return self.__catNum
# (d) Define a setter for adding a Pussa in the list of pusses
def addPussa(self, Pussa):
self.listPussa.append(Pussa)
# (e) Define the cleanCat method which removes all pusses from the cat, empty the list
def cleanCat(self):
if len(self.listPussa) is 0:
return
else:
for i in range(len(self.listPussa)):
self.listPussa.pop(i)
每个帮助和评论都非常有用:)
答案 0 :(得分:3)
可能是这样的吗?
pussaIndex = 0
for cat in cats:
if cat.getcatNum() % 2 == 0:
# add the next four elements from `listPussa`
for i in range(4):
cat.addPussa(listPussa[pussaIndex])
pussaIndex += 1