문제 내용
1. 터틀이 외부로 나갈 때 마다 터틀 컬러가 빨주노초파남보 순서대로 변하게 하기
2. 펜 컬러 랜덤으로 변하기
문제 풀이
import random
import turtle
swidth, sheight, pSize, exitCount = 300, 300, 3, 0
r, g, b, angle, dist, curX, curY = [0] * 7
turtle.title('거북이가 맘대로 다니기')
turtle.shape('turtle')
turtle.pensize(pSize)
turtle.setup(width=swidth+30, height=sheight+30)
turtle.screensize(swidth, sheight)
colors = ['red', 'orange', 'yellow', 'green', 'blue', 'navyblue', 'purple']
# 터틀 색깔의 고유번호 변수입니다. 0번 빨강부터 시작합니다. ex: 0번 red, 1번 orange, ... , 6번 purple
color_index = 0
# 거북이가 외부로 나가면 색깔의 고유번호 color_index에 1씩 증가시켜 색깔을 바꿔줍니다.
while True :
r = random.random()
g = random.random()
b = random.random()
turtle.pencolor((r, g, b))
# turtle의 색깔을 0번 red부터 시작합니다.
turtle.fillcolor(colors[color_index])
angle = random.randrange(0,360)
dist = random.randrange(1,100)
turtle.left(angle)
turtle.forward(dist)
curX = turtle.xcor()
curY = turtle.ycor()
if (-swidth / 2 <= curX and curX <= swidth / 2) and (-sheight / 2<= curY and curY <= sheight / 2) :
pass
else :
turtle.penup()
turtle.goto( 0, 0 )
turtle.pendown()
# 거북이가 외부로 나가면 color_index를 1 증가시켜줍니다.
color_index += 1
# 따라서 다음 번호의 색깔을 사용하게 됩니다.
exitCount += 1
if exitCount >= 7 : # 빨주노초파남보 모두 그리고 나면 종료합니다.
break
turtle.done()
코드 결과
참고
'코드예시👨🏻💻▶️ 파이썬' 카테고리의 다른 글
파이썬으로 시, 분, 초 계산하는 함수 코드 작성하기 (0) | 2020.10.21 |
---|---|
파이썬 여러 유형별 별 찍기 함수 정리 (0) | 2020.10.21 |
파이썬 리스트에 있는 가장 작은 수 찾기 (0) | 2020.10.21 |
파이썬 터틀 그래픽 (turtle graphics) 포물선 운동 그리기 (0) | 2020.10.21 |
파이썬 3의 배수를 찾아 리스트 만들기 (0) | 2020.10.21 |