Nikassaiop End
Просветленный
(41649)
1 месяц назад
Идея с уклоном в генетическую модель, но со сломанной логикой генетики. Вместо наследования черт и формирования конкретных особенностей вида тут просто рандомная цепочка ничего. Если доработать, можно будет демонстрировать роль генетики в существовании вида.
import random
class Person:
def __init__(self, name, gender, genetic_code):
self.name = name
self.gender = gender
self.genetic_code = genetic_code
def __repr__(self):
return f"{self.gender}({self.name}, Code: {self.genetic_code})"
class Woman(Person):
def create_offspring(self, partner):
if partner.gender == 'Male':
offspring_code = self.generate_unique_code(partner)
behavior = self.generate_behavior()
return Child(f"Child of {self.name} and {partner.name}", offspring_code, behavior)
def generate_unique_code(self, partner):
base_code = self.genetic_code + partner.genetic_code
unique_suffix = ''.join(random.choices('ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789', k=3))
return base_code + unique_suffix
def generate_behavior(self):
behaviors = ["playful", "curious", "caring", "adventurous", "intelligent"]
return random.choice(behaviors)
class Man(Person):
pass
class Child(Person):
def __init__(self, name, genetic_code, behavior):
super().__init__(name, 'Child', genetic_code)
self.behavior = behavior
def __repr__(self):
return f"Child({self.name}, Code: {self.genetic_code}, Behavior: {self.behavior})"
man = Man("Alex", "Male", "A1B2C3")
woman = Woman("Emma", "Female", "D4E5F6")
children = [woman.create_offspring(man) for _ in range(5)]
for child in children:
print(child)
```