728x90
반응형
import turtle
import random
t = turtle.Turtle()
t.speed(0)
t.shape('turtle') # 거북 모양
def draw_polygon(pn): # 다각형 그리기
for i in range(pn): # 다각형에서 변의 수만큼 반복
t.forward(100) # 한변 그리기
t.left(int(360/pn)) # 360도를 4각형일때 4호 나누면 각도 구할 수 있음
lst = []
for i in range(5): # 5개의 크기 램덤 생성
lst.append(random.randint(1, 100)/10)
lst.sort() # 정렬
pos = [] # 거북이의 위치 저장 변수
for i in range(5): # 5개의 거북이 그리기
r = random.random() # R,G,B 칼러의 램덤 생성
g = random.random()
b = random.random()
t.color(r, g, b) # 색 지정
t.shapesize(lst[i]) # 거북이 크기 지정. 랜덤 생성된 크기의 정렬해서 작은 크기부터 큰 크리고 그리기
t.stamp() # 거북이 찍기
t.right(random.randint(0, 360)) # 0~360도의 임의의 각도
pos.append([t.xcor(), t.ycor()]) # 현재 거북이 좌표, x, y 저장
t.penup() # 이동하기 위해 penup
t.forward(random.randint(60, 300)) # 이동. 임의의 거리
t.pendown() # 다음 그리기 위해 pendown
# 거북이 그리면서 선을 그려도 되지만 문제에서 좌표를 저장한 후에 그리라고 햇으므로
t.penup()
t.goto(pos[0][0], pos[0][1]) # 처음 위치로 이동
t.pendown()
for i in range(len(pos)): # 각 거북이 좌표 수 만큼 반복
t.goto(pos[i][0], pos[i][1]) # 거북이 좌표로 이동
turtle.done()
try:
turtle.bye()
except:
print("bye")
728x90
반응형
'프로그램' 카테고리의 다른 글
[파이썬] 터틀(turtle)에서 주사위 정육면체 코드에서 그룹화해서 이동 및 각도 변경해서 그리기 (0) | 2023.05.06 |
---|---|
[파이썬] 문제 : tkinter 가위,바위,보 게임 (1) | 2023.05.06 |
[파이썬] 문제 : 터틀(turtle) 텍스트 T=삼각형, R=사각형 입력받아 그리기 (1) | 2023.05.05 |
[파이썬] 문제 : fruit_list의 과일명에서 긴 문자열 찾고 삭제하기 (0) | 2023.05.05 |
[파이썬] 문제 : 이름 리스트에서 [n:m] 문자 출력하기 (0) | 2023.05.04 |
댓글