2017-01-22 5 views
0

나는 파이썬 초보자이며 거북이로 이니셜을 쓰는 기본 과제를 준비 중입니다. 나는 이니셜의 과정이 제대로 작동하도록 모든 것을 설정했지만, 반복 할 때마다 색을 바꿔야합니다. 광범위한 연구 끝에, 나는 그것을 작동시키지 못했습니다. 여기 내 코드가있다. 당신이 당신의 루프 for i in range(0,4)을 시작거북이 반복에서 색상 변경

import turtle 

screen = turtle.Screen() 
screen.setup(400,400,0,0) 

screen.bgcolor('black') 

timmy = turtle.Turtle() 
timmy.color('orange') 

timmy.shape("turtle") 

timmy.pencolor("purple") 
timmy.pensize(7) 

for i in range(0,4): 

    timmy.penup() 
    timmy.goto(-150,-150) 

    timmy.pendown() 

    timmy.left(90) 
    timmy.forward(150) 
    timmy.right(165) 
    timmy.forward(155) 
    timmy.left(150) 
    timmy.forward(155) 
    timmy.right(165) 
    timmy.forward(150) 

    timmy.penup() 

    timmy.left(90) 
    timmy.forward(30) 
    timmy.left(90) 

    timmy.pendown() 

    timmy.forward(150) 
    timmy.backward(75) 
    timmy.right(90) 
    timmy.forward(50) 
    timmy.left(90) 
    timmy.forward(75) 
    timmy.left(180) 
    timmy.forward(150) 

    timmy.penup() 

    timmy.left(90) 
    timmy.forward(30) 

    timmy.pendown() 
    timmy.left(90) 
    timmy.forward(150) 
    timmy.right(165) 
    timmy.forward(155) 
    timmy.left(150) 
    timmy.forward(155) 
    timmy.right(165) 
    timmy.forward(150) 
    timmy.left(90) 

답변

0

직후, 당신은 추가 할 수 있습니다

if i == 0 : timmy.pencolor('NAMEOFCOLOR') 
if i == 1 : timmy.pencolor('NAMEOFCOLOR') 
if i == 2 : timmy.pencolor('NAMEOFCOLOR') 
if i == 3 : timmy.pencolor('NAMEOFCOLOR') 
1

을 당신이 반복의 수를 제어하는 ​​i 변수를 참조하지 않기 때문에 :

timmy.pencolor("purple") 

for i in range(0,4): 

    ... 

을 우리 대신 할 수 있습니다 :

PEN_COLORS = ["purple", "red", "green", "orange"] 

for color in PEN_COLORS: 

    timmy.pencolor(color) 

    ... 

색상 수를 사용하면 반복 횟수를 제어 할 수 있습니다.