徐松亮Python教学-基础篇2-turtle

版权声明:本文为博主徐松亮的原创作品,未经允许不得转载,多谢支持!QQ:5387603

推荐点击此链接:欢迎进入徐松亮博客一站式导航搜索(随时更新)


一,turtle简介

  • 乌龟画笔,一点一点的画

二,原创源码

#!/usr/bin/python

import sys              # 系统
import turtle           # 小乌龟画图
import time             # 时间
#--------------------------------------------------	
StrLine = "--------------------"
LineNum = 1
#--------------------------------------------------	
print (StrLine,LineNum,"-turtle画图")
LineNum+=1
print ("import turtle:       引用模块")
print ("turtle.Pen() :       创建对象")
print (".forward(x)  :       向前移动x像素")
print (".backward(x) :       向后移动x像素")
print (".left(x)     :       向左转动x度")
print (".right(x)    :       向右转动x度")
print (".up()        :       抬笔 停止作画")
print (".down()      :       下笔 继续作画")
print (".setheading(x):      面向指定方向")
print (".begin_fill():       开始填充")
print (".end_fill()  :       结束填充")
print (".circle(x)   :       画指定大小的圆")
print (".color(r,g,b):       设置画笔颜色(0-1)")

t1=turtle.Pen()  # 创建画布
t2=turtle.Pen()  # 创建画布
# 双点画图
print ("双点画图\n")
t2.up()
t2.left(90)
t2.forward(200) 
t2.right(90)
t2.down()

t1.forward(50)
t2.forward(50)
t1.left(90)
t2.left(90)
t1.forward(50)
t2.forward(50)   
t1.right(90)
t2.right(90)
t1.forward(50)
t2.forward(50)
t1.right(90)
t2.right(90)
t1.forward(50)
t2.forward(50)  
t1.left(90)
t2.left(90)

time.sleep(1)
t1.clear()       # 清屏但turtle位置不变
t2.clear()
time.sleep(1)
# 画两条线
print ("画平行线\n")
t1.reset()       # 清屏且turtle位置复位
t1.backward(100)
t1.up()
t1.right(90)
t1.forward(20)
t1.left(90)
t1.down()
t1.forward(100)
time.sleep(1)

def turtle_xsl_draw0(_turtle,_num,_len,_angle):
        _turtle.reset()
        for x in range(1,_num+1):
                _turtle.forward(_len)
                _turtle.left(_angle)
        return
# 画方形
print ("画方\n")
turtle_xsl_draw0(t1,4,300,90)
time.sleep(1)
# 画8角星星
print ("画8角星星\n")
turtle_xsl_draw0(t1,8,300,225)
time.sleep(1)
# 画8角星星
print ("画37角旋涡星\n")
turtle_xsl_draw0(t1,37,300,175)
time.sleep(1)
# 画8角星星
print ("画19角螺旋星\n")
turtle_xsl_draw0(t1,19,300,95)
time.sleep(1)
# 画中空星星
print ("画9角中空星\n")
t1.reset()
for x in range(1,2*9+1):
        t1.forward(200)
        if x%2==0:
                t1.left(175)
        else:
                t1.left(225)
time.sleep(1)
# 画小汽车
t1.reset()
t1.color(1,0,0)
t1.begin_fill()
t1.forward(100)
t1.left(90)
t1.forward(20)
t1.left(90)
t1.forward(20)
t1.right(90)
t1.forward(20)
t1.left(90)
t1.forward(60)
t1.left(90)
t1.forward(20)
t1.right(90)
t1.forward(20)
t1.left(90)
t1.forward(20)
t1.end_fill()

t1.color(0,0,0)
t1.up()
t1.forward(10)
t1.down()
t1.begin_fill()
t1.circle(10)
t1.end_fill()

t1.setheading(0)
t1.up()
t1.forward(90)
t1.right(90)
t1.forward(10)
t1.setheading(0)
t1.down()
t1.begin_fill()
t1.circle(10)
t1.end_fill()
#
del x
del t1
del t2
#--------------------------------------------------
sys.exit()
#--------------------------------------------------


三,原创源码效果展示

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

徐松亮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值