python小兔子代码

以下是一个简单的 Python 小兔子代码:

import random

class Rabbit:
    def __init__(self, name):
        self.name = name
        self.age = 0
        self.gender = random.choice(['male', 'female'])
        self.color = random.choice(['white', 'brown', 'black'])
        self.weight = random.randint(1, 5)

    def grow(self):
        self.age += 1
        self.weight += 1

    def eat(self):
        self.weight += 1

    def __str__(self):
        return f"{self.name} ({self.gender}, {self.color}, {self.age} years old, {self.weight} kg)"

if __name__ == '__main__':
    rabbits = []
    for i in range(10):
        rabbits.append(Rabbit(f"Rabbit{i+1}"))

    for year in range(5):
        print(f"Year {year+1}:")
        for rabbit in rabbits:
            rabbit.grow()
            if rabbit.age >= 2:
                rabbit.eat()
            print(rabbit)

这个代码定义了一个 Rabbit 类,每个实例都有一个名字、年龄、性别、颜色和体重。在主程序中,我们创建了 10 只兔子,并模拟了 5 年的时间。每年,兔子都会长大一岁,体重增加一公斤。如果兔子年龄超过 2 岁,它们会吃东西,体重再增加一公斤。最后,我们打印出每只兔子的信息。

这个代码还可以进一步扩展,例如添加兔子的繁殖功能。我们可以在 Rabbit 类中添加一个 breed 方法,用于判断兔子是否可以繁殖,并返回一个新的兔子实例。具体实现可以参考以下代码:

import random

class Rabbit:
    def __init__(self, name):
        self.name = name
        self.age = 0
        self.gender = random.choice(['male', 'female'])
        self.color = random.choice(['white', 'brown', 'black'])
        self.weight = random.randint(1, 5)

    def grow(self):
        self.age += 1
        self.weight += 1

    def eat(self):
        self.weight += 1

    def breed(self):
        if self.gender == 'female' and self.age >= 2 and self.weight >= 3:
            return Rabbit(f"{self.name}'s baby")
        else:
            return None

    def __str__(self):
        return f"{self.name} ({self.gender}, {self.color}, {self.age} years old, {self.weight} kg)"

if __name__ == '__main__':
    rabbits = []
    for i in range(10):
        rabbits.append(Rabbit(f"Rabbit{i+1}"))

    for year in range(5):
        print(f"Year {year+1}:")
        new_rabbits = []
        for rabbit in rabbits:
            rabbit.grow()
            if rabbit.age >= 2:
                rabbit.eat()
            baby = rabbit.breed()
            if baby:
                new_rabbits.append(baby)
            print(rabbit)
        rabbits += new_rabbits

在这个代码中,我们在 Rabbit 类中添加了一个 breed 方法。这个方法首先判断兔子是否为雌性、年龄是否大于等于 2 岁、体重是否大于等于 3 公斤,如果满足条件,就返回一个新的兔子实例。在主程序中,我们每年都检查每只兔子是否可以繁殖,并将新生的兔子添加到兔子列表中。这样,我们就可以模拟出兔子的繁殖过程了。