Pythonでライフゲーム2

import random

SIZE = 3            # BoardSize
RNG_SIZE = SIZE + 1 # use "for loop"
ALIVE = 1
DEAD = 0

# LifeGame Judge
def lifegame(list):
    tmp = initList()
    for i in range(1, RNG_SIZE):
        for j in range(1, RNG_SIZE):
            cnt = count(list, i, j)
            if(list[i][j] == 1):
                if(cnt != 2 and cnt != 3):
                    tmp[i][j] = DEAD # dead
                else:
                    tmp[i][j] = ALIVE # alive
            else:
                if(cnt == 3):
                    tmp[i][j] = ALIVE # born
                else:
                    tmp[i][j] = DEAD # death
    flg = True
    if(isDead(tmp)):
        flg = False
    if(isNotEvol(tmp, list)):
        flg = False
    return tmp, flg        

# Alive Count on around
def count(list, row, col):
    ret = 0
    for i in range(-1, 2):
        for j in range(-1, 2):
            if(i == 0 and j == 0):
                continue
            if(list[row + i][col + j] == ALIVE):
                ret += 1
    return ret

# Is All Dead
def isDead(tmp):
    for i in range(1, RNG_SIZE):
        for j in range(1, RNG_SIZE):
            if(tmp[i][j] == ALIVE):
                return False
    return True

# Is Evolving
def isNotEvol(tmp, list):
    for i in range(1, RNG_SIZE):
        for j in range(1, RNG_SIZE):
            if(tmp[i][j] != list[i][j]):
                return False
    return True

# Display
def printList(list):
    for i in range(1, RNG_SIZE):
        s = ""
        for j in range(1, RNG_SIZE):
            s += str(list[i][j]) + " "
        print s
    print ""

# Initialize List
def initList():
    ret = 
    for i in range(0, RNG_SIZE + 1):
        tmp = 
        for j in range(0, RNG_SIZE + 1):
            tmp.append(0)
        ret.append(tmp)
    return ret 

# main
def main():
    list = initList()
    
    for i in range(1, RNG_SIZE):
        for j in range(1, RNG_SIZE):
            list[i][j] = random.choice([1, 0])
    
    printList(list)
    flg = True
    while(flg):
        list, flg = lifegame(list)
        printList(list)

if __name__ == "__main__":
    main()