fullmoon's bright IT blog

[python] Turtle 모양대로 그려보기 (feat. 밀려드는 주문서) 본문

STUDY

[python] Turtle 모양대로 그려보기 (feat. 밀려드는 주문서)

휘영청 2023. 6. 4. 16:15
728x90

python 공부를 미루고 미루다가 백수가 되서 해보는 중이다.

홍정모 아저씨로 공부중인데 Turtle graphics이라고 거북이로 그림 그리는 걸 해본다

https://docs.python.org/3/library/turtle.html

 

turtle — Turtle graphics

Source code: Lib/turtle.py Introduction: Turtle graphics is a popular way for introducing programming to kids. It was part of the original Logo programming language developed by Wally Feurzeig, Sey...

docs.python.org

 

1. 직선그리기

홍정모 아저씨가 직선을 그리라고 해서 일단 하라는대로 해봄

import turtle


t = turtle.Turtle()

# turtle.setup(1280, 960)
# turtle.screensize(400, 300)


t.speed("slowest")
t.shape("turtle")
t.turtlesize(2)
t.color("blue")
t.pencolor("green")


t.forward(200)
t.left(90)

turtle.done()

 

 

2. 정사각형 그리기

import turtle


t = turtle.Turtle()

# turtle.setup(1280, 960)
# turtle.screensize(400, 300)


t.speed("slowest")
t.shape("turtle")
t.turtlesize(2)
t.color("blue")
t.pencolor("green")


t.forward(200)
t.left(90)
t.forward(200)
t.left(90)
t.forward(200)
t.left(90)
t.forward(200)


turtle.done()

 

여기서 반복문 만들기

import turtle


t = turtle.Turtle()

# turtle.setup(1280, 960)
# turtle.screensize(400, 300)


joe = t.clone
t.speed("slowest")
t.shape("turtle")
t.turtlesize(2)
t.color("blue")
t.pencolor("green")

for i in range(4):
   t.forward(200)
   t.left(90)


turtle.done()

for문 써서 뭐하나!

내일 라이딩 하는 주영님한테 보냈더니 갑자기 배달의 민족 주문 급으로 주문을 하신다

 

 

3. 수평선 그리기 2개

그럼 거북이 2마리 해야하고 좌표로 다르게해야 한다?로 생각함

파란거북이 (t1) 

빨간거북이(t2)

Pen control을 독스에서 찾아서 해봄(https://docs.python.org/3/library/turtle.html#turtle.penup)

 

고객 요청사항

import turtle

t1 = turtle.Turtle()
t1.speed("slowest")
t1.shape("turtle")
t1.turtlesize(4)
t1.color("blue")
t1.pencolor("green")

t1.penup()
t1.goto(0, 0)
t1.pendown()

t1.forward(100)


t2 = turtle.Turtle()
t2.speed("slowest")
t2.shape("turtle")
t2.turtlesize(4)
t2.color("red")
t2.pencolor("purple")

t2.penup()
t2.goto(0, 30)
t2.pendown()

t2.forward(100)

turtle.done()

 

귀엽네여

 

4. 세모랑 네모랑

 

아니.. 일은 내가 하는거 아니에요? ㅋㅋㅋㅋㅋㅋ

#삼각형은 120도 3개의 변
for i in range(3):
    t1.forward(100)
    t1.left(120)
    
#사각형은 90도 4개의 변
for i in range(4):
    t1.forward(100)
    t1.left(90)

좌표를 어디다 둬야하나 고민하다가

 

성공!

 

5. 다윗의 별?

일단 주문접수

 

일단 별은 했는데 삼각형 2개로 해보자

ㅋㅋㅋㅋㅋㅋ

 

import turtle

t1 = turtle.Turtle()
t1.speed("fastest")
t1.shape("turtle")
t1.turtlesize(4)
t1.color("blue")
t1.pencolor("green")

t1.penup()
t1.goto(-100, 0)
t1.pendown()

for i in range(3):
    t1.forward(100)
    t1.right(120)

t1.penup()
t1.goto(-100, -50)
t1.pendown()

for i in range(3):
    t1.forward(100)
    t1.left(120)

 

거북이 하나로 포문 2개 돌리는거얏!

 

6. 마지막 별 안에 동그라미

 

import turtle

t1 = turtle.Turtle()
t1.speed("fastest")
t1.shape("turtle")
t1.turtlesize(4)
t1.color("blue")
t1.pencolor("green")

t1.penup()
t1.goto(-100, 0)
t1.pendown()

for i in range(3):
    t1.forward(100)
    t1.right(120)

t1.penup()
t1.goto(-100, -50)
t1.pendown()

for i in range(3):
    t1.forward(100)
    t1.left(120)

t2 = turtle.Turtle()
t2.speed("fastest")
t2.shape("turtle")
t2.turtlesize(4)
t2.color("red")
t2.pencolor("purple")

t2.penup()
t2.goto(-50, -120)
t2.pendown()

t2.circle(100) #속 빈 동그라미

turtle.done()

천천히 그리는거 귀찮아서 빨리로 바꿈

동그라미는 shape에서 바꿈

 

갑자기 파이썬 공부하다가 동료에게 말하면 미션이 들어오는 일.daily

 

#파이썬 #python #turtle

728x90