import random
def Livinst(params):
    Livinter = params.copy()
    Livinter2 = []
    LoL = 0 #LifeOfList
    k = 0
    G = []
    P = 0
    while k < len(Livinter)-1: #リストの寿命
        if Livinter2 == Livinter: #カブったらリストは病気
            break
        Livinter2 = Livinter.copy()
        print(Livinter,end=f":{k}\n")
        if Livinter[k] == Livinter[k+1]:
            Lovon=Livinter.pop(k+1)
            Livinter.append(Lovon)
            LoL+=1
            if not(LoL < 2 and Livinter[k] != None):
                if random.randint(0,15) == 0: #突然変異
                    if Livinter[k] == True:
                        Livinter.append(Livinter[k])
                        Livinter[k] = False
                    else:
                        Livinter[k] = None
                else:
                    Livinter[k] = None
                
        else:
            if Livinter[k] != None:#死体は子を作れない
                if Livinter[k+1] != None:
                    Livinter.append(not(Livinter[k]))
                LoL=0
            else:
                LoL=0
                Livinter.pop(k)
            k+=2
            
    else:
        print(end=f"死因:老衰\n")
        return None
    print(end=f"死因:病死\n")
    return None
Livinst([False,False,False,False,True,True,True,True,])
Livinst([True,False,False,True,False,True,])

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: