条件、循环、函数定义 练习

1.注意标准库的两种导入与使用方式,建议大家采用<库名>.<函数名>的方式。

2.对前面的代码进行优化,用for,while,if,def实现:

  a.画五角星

import turtle
for i in range(5):
    turtle.forward(100)
    turtle.right(144)

 

  b.画同心圆

import turtle
for i in range(5):
    turtle.up()
    turtle.goto(0,-20*(1+i))
    turtle.down()
    turtle.circle(20*(1+i))

 

  c.画太阳花

import turtle
while True:
    turtle.forward(200)
    turtle.left(170)
    if(abs(turtle.pos()))<1:
        break

 

  d.画五个角星

import turtle
turtle.setup(600,400,0,0)
turtle.color('yellow')
turtle.bgcolor('red')
turtle.fillcolor('yellow')

def mygoto(x,y):
    turtle.up()
    turtle.goto(x,y)
    turtle.down()

mygoto(-250,75)

turtle.begin_fill()
for i in range(5):
    turtle.forward(100)
    turtle.right(144)
turtle.end_fill()

mygoto(-100,115)

turtle.begin_fill()
for i in range(5):
    turtle.forward(50)
    turtle.right(144)
turtle.end_fill()

mygoto(-50,85)

turtle.begin_fill()
for i in range(5):
    turtle.forward(50)
    turtle.right(144)
turtle.end_fill()

mygoto(-50,35)

turtle.begin_fill()
for i in range(5):
    turtle.forward(50)
    turtle.right(144)
turtle.end_fill()

mygoto(-100,0)

turtle.begin_fill()
for i in range(5):
    turtle.forward(50)
    turtle.right(144)
turtle.end_fill()

 

  e.画◇花瓣的太阳花。

import turtle
def my_lx(brad):
    brad.forward(100)
    brad.right(45)
    brad.forward(100)
    brad.right(135)

def my_art():
    window=turtle.Screen()
    window.bgcolor("purple")
    brad=turtle.Turtle()
    brad.shape("turtle")
    brad.color("orange")
    brad.speed('fastest')
    for i in range(1,37):
        my_lx(brad)
        my_lx(brad)
        brad.left(10)
    brad.right(90)
    brad.forward(300)
my_art()

 

posted @ 2017-09-13 16:12  105杨捷丽  阅读(116)  评论(0编辑  收藏  举报