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 公斤,如果满足条件,就返回一个新的兔子实例。在主程序中,我们每年都检查每只兔子是否可以繁殖,并将新生的兔子添加到兔子列表中。这样,我们就可以模拟出兔子的繁殖过程了。