본문 바로가기

WarGame/PythonChallenge

Python Challenge 09 :: turtle

파이썬 챌리지 09는 다음과 같습니다.



타이틀이 "connect the dots" 입니다. 소스코드를 보니 (1st X, 1st Y, 2nd X, 2nd Y ...) 좌표들이 나열되어 있고 이 점들을 연결하면 될 것 같습니다.



대부분의 풀이가 PIL 모듈의 ImageDraw를 이용한 것 같아서, 저는 turtle 모듈을 이용하여 풀어 보도록 하겠습니다.

  • goto(x좌표,y좌표) : 특정 위치로 펜 이동

  • up() : 좌표로 이동시 (turtle을 up시켜그림이 그려지지 않게 한다.

  • down() : 좌표로 이동시 (turtle을 down시켜) 그림이 그려지게 한다. (기본값)

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
from turtle import *
first = [146399163403 ... 147394146399]        # 해당 좌표를 리스트로 대입
second = [156141165135 ... 157136156136]    
 
for i in range(0len(first), 2):                        # 2칸씩 건너뛰면서 goto(X,Y)로 선 연결
    goto(int(first[i]), int(first[i+1]))
 
for i in range(0len(second), 2):
    goto(int(second[i]), int(second[i+1]))
 
 
# 아래 코드는 첫 시작 좌표로 이동시 그림을 그려지지 않기 위한 코드입니다.
# turtle은 첫 시작 좌표로 이동하면서 선을 긋기 때문에 첫 좌표에서는 up()으로 펜을 띄워 그림이 그려지지 않게 한다.
# for i in range(0, len(first), 2):
#        if i == 0:
#            up()
#            goto(int(first[i]), int(first[i+1]))
#        else:
#            down()
#            goto(int(first[i]), int(first[i+1]))
# for i in range(0, len(second), 2):
#        if i ==0:
#            up()
#            goto(int(second[i]), int(second[i+1]))
#        else:
#            down()
#            goto(int(second[i]), int(second[i+1]))
cs




아래와 같은 그림이 나왔습니다. 왜 거꾸로 나오는지 모르겠습니다. 혹시 아시는 분은 댓글로 남겨주세요~


황소를 영어로 하면? 

bull


'WarGame > PythonChallenge' 카테고리의 다른 글

Python Challenge 11 :: Image(PIL)  (0) 2015.11.01
Python Chanllenge 10 :: 읽고 말하기 수열  (0) 2015.11.01
Python Challenge 08 :: bz2  (0) 2015.10.31
python challenge 07 :: Image(PIL)  (0) 2015.10.30
Python Challenge 06 :: zipfile  (0) 2015.10.26