티스토리 뷰

목차

    반응형

    파이썬 gui 예제 3개 소개합니다. Python 거북이(turtle)로 그림 그리는 소스이며 아래와 같습니다.


    1. 별 그리기
    2. 삼각형 그리기
    3. 사각형 4개 붙여서 그리기


    실행하면 아래와 같이 원하는 지점에 별을 여러 개 그릴 수 있습니다.



    파이썬 거북이 그림그리기 소스 3개 (별 삼각형 사각형 star triangle farm)[디자인 프로그래밍 강좌]



    전체 gui 소스는 아래와 같으며 우선 별 그리는 파이썬 소스를 먼저 소개합니다.



    ◆ 파이썬 거북이(turtle)로 별 그리기 전체 소스


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    #-*- coding: utf-8 -*-
     
    import turtle
    import random
     
    def star(t):
        t.left(36)
        for i in range(5):
            t.forward(200)
            t.left(144)
     
    def onPress():
        r = random.randrange(256)
        g = random.randrange(256)
        b = random.randrange(256)
     
        color = '#{:02x}{:02x}{:02x}'.format(r,g,b)
        scr.bgcolor(color)
        print('color :', color)
     
    def onClick(x, y):
        t.penup()
        t.goto(x, y)
        t.pendown()
     
        star(t)
     
    = turtle.Turtle()
    t.shape('turtle')
     
    scr = turtle.Screen()
    scr.bgcolor('#ff7f00')
     
    scr.onclick(onClick)
    scr.onkey(onPress, 'c')
    scr.onkey(scr.bye, 'q')
     
    scr.listen()
    scr.mainloop()
    cs



    6번 라인이 별 그리는 gui 소스입니다.

    12번 라인 onPress 함수는 배경 화면 색상을 랜덤하게 변경합니다.

    21번 라인 onClick 함수를 통해 별 그리기 좌표를 생성합니다.


    31번 라인 turtle.Scrren 변수를 생성하여 32번 라인에서 배경 화면을 설정합니다.


    34번 라인, 마우스 클릭 이벤트로 onClick 함수를 설정합니다.

    35번 라인, 키보드 입력 이벤트로 onPress 함수를 설정합니다. 키보드 c 누르면 배경 화면이 바뀝니다.

    36번 라인, 파이썬 거북이(터틀) 종료 이벤트를 설정합니다. 키보드 q 누르면 프로그램 종료됩니다.



    ■ 결과


    파이썬 거북이 gui 예제[디자인 프로그래밍 강좌]



    위 gif 처럼 키보드를 누르면 python 거북이(터틀)가 움직이며 별을 그립니다.


    별을 그릴 때, 키보드 c 누르면 gui 배경화면이 바뀝니다.



    파이썬 거북이 삼각형[디자인 프로그래밍 강좌]



    위는 마우스로 화면 아무 곳을 찍고 키보드 c 키를 연타했을 경우입니다.

    ◆ Python Turtle 삼각형 그리기

    gui 전체 소스 26번 라인에서 호출하는 함수를 아래 triangle 함수로 교체하면 삼각형 그림 그릴 수 있습니다.


    1
    2
    3
    4
    5
    6
    def triangle(t):
        t.forward(200)
        t.left(120)
        t.forward(200)
        t.left(120)
        t.forward(200)
    cs



    ■ 결과


    파이썬 거북이 사각형 그리기[디자인 프로그래밍 강좌]


    ◆ 파이썬 거북이(터틀)로 사각형 4개 붙여 그리기

    사각형 4개를 그리는데 모두 이어 붙이도록 합니다.


    1
    2
    3
    4
    5
    6
    def farm(t):
        for i in range(4):
            for j in range(4):
                t.forward(200)
                t.left(90)
            t.left(90)
    cs



    ■ 결과


    파이썬 거북이 그림그리기 소스 3개 (별 삼각형 사각형 star triangle farm)[디자인 프로그래밍 강좌]



    파이썬 gui. 삼각형 그리기 함수와 마찬가지로 전체 소스 26번 라인에서 호출하는 함수를 위 farm으로 교체하면 됩니다.


    이상 Python gui 예제 3개였습니다. 그리는 예제 소스 자체는 이해하기 어렵지 않으니 쉽게 응용할 수 있으실 겁니다.



    관련 글


    파이썬 컴프리헨션 예제 8개 for if dict zip map


    파이썬 print 재귀함수, 반복 출력, 문자열 거꾸로 뒤집기


    파이썬 정렬 sort sorted reverse=true 예제 4개



    ⓒ written by vicddory

    반응형