Python使用turtle绘图
Python使用turtle绘图。
·
Python使用turtle绘图
1.画直线
"""
海龟画直线:
1.召唤海龟
2.给海龟一支笔
3.下达画直线的命令
"""
import turtle
t = turtle.Turtle()
turtle.title('直线')
# 海归默认朝右运动
t.forward(100)
turtle.mainloop()
2.画矩形
import turtle
t = turtle.Turtle()
turtle.title('矩形')
"""
t.left(90)->左转90°
t.right(90)->右转90°
t.left(90)和t.right(270)结果是一样的
"""
t.forward(100)
t.left(90)
t.forward(50)
t.left(90)
t.forward(100)
t.left(90)
t.forward(50)
turtle.mainloop()
3.画三角形
import turtle
t = turtle.Turtle()
turtle.title('三角形')
"""
t.left(90)->左转90°
t.right(90)->右转90°
t.left(90)和t.right(270)结果是一样的
"""
t.forward(150)
t.left(120)
t.forward(150)
t.left(120)
t.forward(150)
turtle.mainloop()
4.清除画布
import turtle
t = turtle.Turtle()
# 1,使用reset()方法清除画布
t.forward(100)
# 使用position()方法获取海龟当前坐标
print(t.position()) # (100.00,0.00)
t.reset()
print(t.position()) # (0.00,0.00)
# 2,使用clear()方法清除画布
t.forward(100)
print(t.position()) # (100.00,0.00)
t.clear()
print(t.position()) # (100.00,0.00)
"""
reset()清除画布后,将海归放回初始位置(即重置位置);
clear()清除画布后,海归位置未发生变化
"""
5.后退、抬起与放下
"""
backward():后退;
up():停止作画(抬起画笔);
down():开始作画(放下画笔)
backward()不会改变海龟的朝向;
up()和down()命令之间的轨迹不显示
"""
import turtle
t = turtle.Turtle()
t.backward(100)
print(t.position()) # (-100.00,0.00)
t.up()
t.backward(50)
print(t.position()) # (-150.00,0.00)
t.down()
t.backward(30)
print(t.position()) # (-180.00,0.00)
6.画简单楼梯
import turtle
t = turtle.Turtle()
turtle.title('简单楼梯')
t.forward(40)
t.left(90) # 左转90°
t.forward(40)
t.right(90) # 右转90°
t.forward(40)
t.left(90)
t.forward(40)
t.right(90)
t.forward(40)
t.left(90)
t.forward(40)
t.right(90)
t.forward(40)
t.left(90)
t.forward(40)
t.right(90)
t.forward(40)
t.left(90)
t.forward(40)
t.right(90)
t.forward(40)
turtle.mainloop() # 保持显示
7.写数字5
import turtle
t = turtle.Turtle()
turtle.title('数字5')
t.backward(50)
t.right(90)
t.forward(50)
t.left(90)
t.forward(50)
t.right(90)
t.forward(50)
t.right(90)
t.forward(50)
turtle.mainloop()
8.没有角的矩形
import turtle
t = turtle.Turtle()
turtle.title('没有角的矩形')
t.up()
t.forward(50)
t.down()
t.forward(100)
t.up()
t.forward(50)
t.right(90)
t.forward(50)
t.down()
t.forward(100)
t.up()
t.forward(50)
t.right(90)
t.forward(50)
t.down()
t.forward(100)
t.up()
t.forward(50)
t.right(90)
t.forward(50)
t.down()
t.forward(100)
t.up()
t.forward(50)
t.right(90)
turtle.mainloop()
9.画多边形
import turtle
t = turtle.Turtle()
turtle.title('九边形')
t.forward(40)
t.right(40)
t.forward(40)
t.right(40)
t.forward(40)
t.right(40)
t.forward(40)
t.right(40)
t.forward(40)
t.right(40)
t.forward(40)
t.right(40)
t.forward(40)
t.right(40)
t.forward(40)
t.right(40)
t.forward(40)
t.right(40)
turtle.mainloop()
10.五角星
import turtle
t = turtle.Turtle()
turtle.title('五角星')
t.pencolor('red') # 设置画笔颜色
# begin_fill()和end_fill()用来指定填色区域
t.begin_fill() # 填色区域开始
t.fillcolor('red') # 设置填充颜色
t.forward(100)
t.right(144)
t.forward(100)
t.right(144)
t.forward(100)
t.right(144)
t.forward(100)
t.right(144)
t.forward(100)
t.right(144)
t.end_fill() # 填色区域结束
turtle.mainloop()
11.绘制彩色的房子
import turtle
t = turtle.Turtle()
turtle.title('绘制彩色房子')
t.begin_fill()
t.fillcolor('#CCFFFF')
t.forward(250)
t.left(150)
t.forward(144)
t.left(60)
t.forward(144)
t.end_fill()
t.up()
t.left(150)
t.forward(25)
t.down()
t.forward(200)
t.begin_fill()
t.fillcolor('#6666CC')
t.right(90)
t.forward(120)
t.right(90)
t.forward(200)
t.right(90)
t.forward(120)
t.end_fill()
turtle.mainloop()
12.扩展
"""
pensize:改变画笔的宽度;
hideturtle:隐藏海龟;
setheading:让海龟面朝指定的方向;---角度为正-->逆时针旋转;角度为负-->顺时针旋转
write:让海龟写字;---格式:write("内容",font=('字体',字体大小))--海龟写字时,位置方向都不会发生变化
"""
import turtle
t = turtle.Turtle()
# 设置画笔宽度为5
t.pensize(3)
t.forward(260)
t.pensize(4)
t.left(90)
t.forward(260)
# 隐藏海龟
t.hideturtle()
# 让海龟面朝指定的方向:0-->朝右;90-->朝上;-90-->朝下;180-->朝左
t.setheading(180)
t.forward(260)
t.goto(0, 0)
# write(self, arg, move=False, align="left", font=("Arial", 8, "normal"))
t.pencolor('green')
t.write('赵客缦胡缨,吴钩霜雪明。\n'
'银鞍照白马,飒沓如流星。\n'
'十步杀一人,千里不留行。\n'
'事了拂衣去,深藏身与名。\n'
'闲过信陵饮,脱剑膝前横。\n'
'将炙啖朱亥,持觞劝侯嬴。\n'
'三杯吐然诺,五岳倒为轻。\n'
'眼花耳热后,意气素霓生。\n'
'救赵挥金槌,邯郸先震惊。\n'
'千秋二壮士,烜赫大梁城。\n'
'纵死侠骨香,不惭世上英。\n'
'谁能书阁下,白首太玄经。', align="right", font=('楷体', 16))
turtle.mainloop()
更多推荐
已为社区贡献12条内容
所有评论(0)