对象和Lis

2024-05-04 00:01:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个Dog类,这样创建的每个Dog对象都包含height和weight字段变量。每一个都应该为每只狗随机初始化。高度应初始化为[1.00100.0]cm范围内的随机浮动。重量应在[0.7,20]kg范围内随机初始化。它说在def\ u init\行(self)后面有一个语法错误:

def_init_(self):
        self.height = random.uniform(0.00,101.0)
        self.weight = random.uniform(0.6,20.0)

我还需要编写一个名为makePack()的函数,该函数接受整数参数n,并返回n个Duck对象的列表。你知道吗

我有这个:

for count in makeFlock(n):
    n = Dog()
    n.attr = count
    Dog.append(n)

我不确定我做得对不对。你知道吗


Tags: 对象函数self高度initdefcountcm
2条回答

删除def和init之间的下划线。你知道吗

假设makeFlock(n)返回一个数字列表,我认为您的第二个循环没有任何问题。你知道吗

这可能是构造函数定义中的单下划线问题。请尝试以下代码

def __init__(self):
    self.height = random.uniform(0.0, 100.0)
    self.weight = random.uniform(0.0, 20.0)

相关问题 更多 >