Python TA Session turtle, tkinter 21300008 강민수
Indexes [ Introduction 0 1 ] [ ] to turtle 0 2 Practice: Turtle [ Introduction 0 3 ] [ ] to tkinter 0 4 Practice: tkinter
I. Introduction to turtle What is turtle? 1
I. Introduction to turtle What is turtle? 1960 년대 Logo 라는교육용프로그래밍언어의일부로개발된컴퓨터그래픽방식 거북이의머리를잘보세요 Object? - 물체, 대상 ex) 삼각형, 사각형, 오각형등 2
I. Introduction to turtle Important! Googling 거북이의머리가향하는방향 각도구하기 Practice! 3
I. Introduction to turtle 함수설명 turtle method 움직임 forward(n) / fd(n) Turtle 을앞으로 n 만큼이동시킴 backword(n) / bk(n) / back(n) goto(x, y) / setpos(x, y) / setposition(x, y) setx(x) sety(y) left(d) / lt(d) right(d) / rt(d) setheading(d) / seth(d) home() Turtle 의 head 위치는바꾸지않고, 뒤로 n 만큼이동시킴 주어진 (x,y) 좌표로이동 x 와 y 좌표로각각값을설정 Turtle 을왼쪽으로 d 도회전시킴 Turtle 을오른쪽으로 d 도회전시킴 Turtle 의방향을 d 도로맞춤. 0 동쪽 90 북쪽 180 서쪽 270 남쪽 Turtle 을기준좌표 (0, 0) 으로옮기고, 방향을기본방향으로함 ( 기본방향은 mode() 에따라다름 ) speed(speed) 파라메터 speed 는 0 에서 10 사이의정수. 0: 'fastest, 1: slowest, 3: slow, 6: normal, 10: fast 4
I. Introduction to turtle 함수설명 turtle method 그리기 circle(r) 반지름이 r인원을그림 circle(50,180) # 호를그릴때는 circle을활용 dot(size, color) stamp() clearstamp(id) clearstamps(n) undo() shape(name) 주어진지름크기와색을가진점을그린다 Turtle 의모양을현재위치에복사함. id 값을 return 주어진 stamp id 에해당하는 stamp 를화면에서지움 n > 0 이면그린순서대로, n < 0 이면마지막에그린 n 개의 stamp 를화면에서지움 마지막움직임을취소 Screen 에저장된모양중하나로 Turtle 의모양을바꿀수있음. arrow, turtle, circle, square, triangle, classic resizemode(mode) auto, user, noresize shapesize() turtlesize() Turtle 모양의크기를설정 5
I. Introduction to turtle 함수설명 turtle method 그리기펜속성 penup() / pu() / up() pendown() / pd() / down() isdown() pensize(w) / width(w) pen() pencolor() fillcolor() color() begin_fill()... end_fill() filling() reset() clear() write(t) 그리기를멈춤 그리기를시작 펜의현재상태를 return 펜의굵기를결정 펜의모든속성을한꺼번에설정가능 파라메터가없으면현재펜색깔을 return. 파라메터를주면펜색깔을설정할수있음 도형채우기색깔을 return 하거나설정 pencolor 와 fillcolor 를동시에 return 하거나설정가능 도형을현재색으로채움 현재채우기를하고있는지상태를 return 화면에그려진모든것을지우고 Turtle 의상태를원점으로 화면에그려진모든것을지우나 Turtle 의상태는그대로 화면에글씨를씀 write("hello", False, align="center", font=("times",20,"bold")) 6
I. Introduction to turtle 함수설명 turtle method 상태값 position() / pos() Turtle 의현재위치 (x, y) 를 return xcor() ycor() 현재 x 와 y 좌표값을 return distance(x, y) heading() towards(x, y) hideturtle() / ht() showturtle() / st() isvisible() (x, y) 좌표와현재 Turtle의위치사이의거리를 return 현재 Turtle의진행방향을각도값으로 return (x, y) 좌표로가기위한방향을각도값으로 return Turtle을숨김 Turtle을보임 Turtle의현재상태를 return 7
I. Introduction to turtle 함수설명 screen method 화면 bgcolor() 배경색을 return 하거나설정 bgpic() 배경이미지파일이름을 return 하거나설정 clear() / clearscreen() reset() / resetscreen() 화면위의모든것을지우고초기상태로 화면위의모든 Turtle 을초기상태로 screensize() 화면의가로세로크기와배경색을 return 하거나설정 이벤트 mainloop() / done() Turtle graphics 가완료되었을때, Tkinter 의 mainloop을시작하는의 미로호출. 항상프로그래밍의마지막줄에위치해야함 입력 textinput(title, prompt) 텍스트입력을받을수있는대화창을띄운다 numinput(title, prompt) 숫자입력을받을수있는대화창을띄운다 8
I. Introduction to turtle 잊지마세요! import turtle t = turtle.turtle() sc = turtle.screen() t.speed(0) t.penup() t.pendown() turtle.done() turtle.mainloop() module 사용하겠다고알려주기 object( 물체 ) 를만들기 빨리빨리그리자.. 빨리빨리그리자.. 그리기시작! 9
II. Practice: turtle 삼각형과사각형그리기 1 각도, 변의길이를나타내는변수를지정한다. ( 각도와변의길이 : 자유 ) 2 삼각형과사각형을그린다. 3 삼각형은 (-80, 100), 사각형은 (50, -100) 위치에그린다. 10
II. Practice: turtle 삼각형과사각형그리기 11
II. Practice: turtle 임의의다각형을그리는함수만들기! 1 각도, 변의길이를입력한다. 2 임의의다각형을그리는함수를정의한다. 한개의함수만사용가능! 다각형의한내각크기계산? random module 을사용한다. 12
II. Practice: turtle 임의의다각형을그리는함수만들기! 13
II. Practice: turtle 임의의다각형을임의의위치에그리는함수만들기 1 이전예제에서정의한예제를토대로작성한다. 2 임의의위치를 return 해주는함수를정의한다. 3 이전예제를수정해함수를적용시킨다. 꼭여기서나타내는지시사항대로하실필요없어요! 14
II. Practice: turtle 임의의다각형을임의의위치에그리는함수만들기 15
II. Practice: turtle 임의의다각형을임의의위치, 임의의색깔로그리는함수만들기 1 이전예제에서정의한예제를토대로작성한다. 2 [ aquamarine, BlueViolet, chocolate, coral, DarkSaimon, firebrick, gold, DarkOrange, LightGreen, MintCream, MediumBlue, RoyalBlue, orchid, maroon, SteelBlue ] 를사용 3 임의의색깔을 return 해주는함수를작성하여예제에적용 꼭여기서나타내는지시사항대로하실필요없어요! 16
III. Introduction to tkinter tkinter 란? 1 GUI(Graphic User Interface) 를위해만들어진 Python 의 module 이름 2 그냥필요한것들 Window 위에쌓으세요! 3 Googling 이중요합니다.. 4 함수설명이나와있는 Document 를시험전에미리켜놓으세요! 17
III. Introduction to tkinter tkinter - inputs 18
III. Introduction to tkinter tkinter - outputs 19
III. Introduction to tkinter tkinter - options 20
III. Introduction to tkinter tkinter pack() 21
III. Introduction to tkinter tkinter - options 1 2 Function 을호출하게해주는 command option No parameter!, No return! 22
III. Introduction to tkinter tkinter - variables 1 tkinter 는 tkinter 만의특별한변수가존재해요! 2 Types -> StringVar(), IntVar(), DoubleVar(), BooleanVar() 3 Set values ->.set() 4 Get values ->.get() 23
III. Introduction to tkinter Important 1 from tkinter import * from tkinter import messagebox Module import 2 3 root = Tk() component.pack() Declare object variable 위치지정 4 variable = StringVar() 또는 IntVar() 또는 BooleanVar() 또는 DoubleVar() Variable type 지정 3 root.mainloop() Draw! 24
IV. Practice - tkinter 아래와같이 Programming 하세요! 25
IV. Practice - tkinter 정답은? 26
감사합니다