【发布时间】:2016-08-23 12:54:37
【问题描述】:
我需要创建一个对 Plant 的 UNBOUND 方法调用来设置名称和叶子,但我不知道如何操作。任何帮助表示赞赏。
我的代码:
class Plant(object):
def __init__(self, name : str, leaves : int):
self.plant_name = name
self.leaves = leaves
def __str__(self):
return "{} {}".format(self.plant_name, self.leaves)
def __eq__(self, plant1):
if self.leaves == plant1.leaves:
return self.leaves
def __It__(self, plant1):
if self.leaves < plant1.leaves:
print ("{} has more leaves than {}".format(plant1.plant_name, self.plant_name))
return self.leaves < plant1.leaves
elif self.leaves > plant1.leaves:
print ("{} has more leaves than {}".format(self.plant_name, plant1.plant_name))
return self.leaves < plant1.leaves
class Flower(Plant):
def __init__(self, color : str, petals : int):
self.color = color
self.petals = petals
def pick_petal(self.petals)
self.petals += 1
作业的准确措辞:
创建一个名为 Flower 的新类。花是植物类的子类;所以除了名字和叶子之外,它还添加了 2 个新属性;颜色, 花瓣.颜色是一个包含花颜色的字符串,而花瓣是一个整数,其中包含花上的花瓣数量。您应该能够创建一个 init 方法来设置实例。使用 init 你应该调用一个 UNBOUND 方法来设置植物的名字和叶子。此外,创建一个名为 pick_petal 的方法,用于减少花上花瓣的数量。
【问题讨论】:
-
“对 Plant 的 UNBOUND 方法调用”?
-
是什么让您认为您需要一个未绑定的呼叫?你几乎肯定不会。
-
这是我正在处理的任务的要求。这是我完全不明白的唯一部分。
-
您可能应该发布问题的确切措辞。事实上,这没有任何意义,让我们认为设置作业的人根本不了解 Python。
-
@DanielRoseman -- 根据我在这里看到的一些作业,我不会太惊讶地看到另一个人设置了毫无意义的作业: -)
标签: python class python-3.x methods subclass