22019, 1/1101 회원가입  로그인  
   kjwon15
   http://goo.gl
   감상해보세요

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=22276 [복사]


파이썬 끼적거리다가 라이프게임 생각나서 1차원으로 만들어봤어요

아래 코드 복사해서 실행해보세요

#!/usr/bin/env python
import random
import time

CNT=146 # 자기 콘솔 크기에 맞춰 적당히 조절하세요
delay=0.3
empty='.'
fill='#'

def cnt(index):
        global before
        num=0
        for i in range(index-1,index+2):
                if before[i%CNT]==fill:
                        num+=1
        return num

#lst=[random.choice(['#','.']) for i in range(CNT)]
lst=[empty for i in range(CNT)]
tmp=[i for i in range(CNT)]
random.shuffle(tmp)
for i in range(5):
        lst[tmp[i]]=fill
del tmp
before=[]
while True:
        print ''.join(lst)
        before=lst[:]
        for i in range(CNT):
                if cnt(i) in [1,2]:
                        lst[i]=fill
                else:
                        lst[i]=empty
        time.sleep(delay)

  Hit : 8999     Date : 2011/11/12 08:19