#거북이 한마리의 1차원 리스트
# 1차원 리스트: [거북이,X위치,Y위치,거북이크기,거북이색상(R),거북이색상(G),거북이색상(B)]
# 2차원 리스트: [거북이1,X,Y,크기,R,G,B], [거북이2,X,Y,크기,R,G,B] .... → 1차원 리스트를 100개를 형성
거북이 100마리의 리스트를 만든 후 거북이 100마리가 화면 중앙에서 임의의 위치로 차례대로 움직이게 만든다.
거북이 1마리의 1차원 리스트를 아래와 같이 7개의 값이 있는 형태로 구성해본다.
import turtle
import random
## 전역 변수 부분 ##
swidth, sheight = 500, 500
myTurtle, tX, tY, tColor, tSize, tShape = [None] * 6
shapeList= []
playerTurtles = [] #거북이 2차원 리스트
## 메인 함수 부분 ##
if __name__ == "__main__" :
turtle.title('거북이 리스트 활용')
turtle.shape('turtle')
turtle.setup(width = swidth + 50, height = sheight + 50)
turtle.screensize(swidth, sheight)
shapeList = turtle.getshapes() ## getshapes() : 현재 사용 가능한 모든 거북이 모양의 이름 목록을 반환
for i in range(1, 100) :
random.shuffle(shapeList) ## shuffle(shapeList) : shapeList항목을 섞어놓는 함수
myTurtle = turtle.Turtle(shapeList[0])
tX = random.randrange(-swidth / 2, swidth / 2)
tY = random.randrange(-sheight / 2, sheight / 2)
r = random.random(); g = random.random(); b = random.random()
tSize = random.randrange(1, 3)
playerTurtles.append([myTurtle, tX, tY, tSize, r, g, b]) ## append() : 리스트 맨 뒤에 항목을 추가
for tList in playerTurtles :
myTurtle = tList[0]
myTurtle.color((tList[4],tList[5],tList[6]))
myTurtle.pencolor((tList[4],tList[5],tList[6]))
myTurtle.turtlesize(tList[3])
myTurtle.goto(tList[1], tList[2])
turtle.done()
'Data Analysis > Python Basic' 카테고리의 다른 글
[파이썬] 함수 기본 (0) | 2023.05.07 |
---|---|
[파이썬] 중간고사 대비 (0) | 2023.04.22 |
[파이썬] 리스트 생성하여 출력 예시 zip (0) | 2023.04.07 |
[파이썬] while문을 이용한 반복문 (0) | 2023.04.03 |
[파이썬] 터틀 프로그램 만들기 (0) | 2023.04.03 |