条件、循环、函数定义 练习
注意标准库的两种导入与使用方式,建议大家采用<库名>.<函数名>的方式。
对前面的代码进行优化,用for,while,if,def实现:
- 画五角星
import turtle for i in range(5): turtle.forward(100) turtle.right(144)
- 画同心圆
import turtle for i in range(5): turtle.up() turtle.goto(0,-20*(1+i)) turtle.down() turtle.circle(20*(1+i))
- 画太阳花
import turtle while True: turtle.forward(200) turtle.left(170) if(abs(turtle.pos()))<1: break
- 画五个角星
import turtle turtle.speed(10) turtle.bgcolor('red') def goto(x,y): turtle.up() turtle.goto(x,y) turtle.down() def draw(r): turtle.color('yellow') turtle.fillcolor('yellow') turtle.begin_fill() for i in range(5): turtle.forward(r) turtle.right(144) turtle.end_fill() goto(-550,200) draw(230) goto(-260,280) turtle.left(45) draw(60) goto(-165,175) turtle.left(50) draw(60) goto(-185,100) turtle.right(95) draw(60) goto(-260,0) turtle.left(45) draw(60) turtle.hideturtle()
-
画◇花瓣的太阳花
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()