• 技术文章 >头条

    分分钟带你用Python中绘图库绘制一条蟒蛇

    silencementsilencement2019-07-10 10:59:59原创4228

    一、.构思设计蟒蛇的长度颜色等

    首先,我们来构思一个简单的蟒蛇。让它的颜色为黄色,形状为一条正在爬行的蟒蛇。

    二、.准备绘图库

    Python中有一个绘图库叫turtle我们先引入它。

    而turtle是一个绘图库在这里我仅介绍几个常用的函数

    1.画布设置

    turtle.setup(a,b,c,d)a,b两个参数分别控制画布的宽和高,?c,d属性控制画布的位置;

    turtle.screesize(a,b,c)a,b控制画布的宽和高,C控制画布的颜色;

    例如:

    turtle.setup(800,400,200,200)//创建一个宽为800像素高为400像素,坐标为(200,200)的画布
    turtle.screensize(800,400,'green') //创建一个宽为800像素,高为400像素,颜色为绿色的画布

    2.画笔设置

    turtle.penup()?抬起笔移动,不绘制图形,用于另起一个地方绘制

    turtle.pendown() 落下画笔,开始绘制图形

    turtle.pensize()?设置画笔的宽度;

    turtle.pencolor()?传入参数设置画笔颜色,没有参数传入则为当前画笔颜色

    turtle.seth(a)改变海龟行进方向a为绝对度数该语句只改变方向但不行进

    3.画笔运动控制

    turtle.fd(X)(turtle.forward(X))向当前画笔方向移动X像素长度,走直线(X可为负数)

    turtle.circle(r,o) 根据r绘制O角度的弧形(r 默认圆心在海龟左侧r距离的位置,o 绘制角度,默认是360度整圆?)

    4.方向控制

    turtle.seth(a)改变方向(turtle.setheading(a))a 为行进方向的绝对角度

    turtle.left(a)

    turtle.right(a) 向左/右转a度

    三、.代码实例

    python彩色蟒蛇

    import turtle
    turtle.setup(1300,400,-250,250)
    turtle.penup()
    turtle.fd(-250)
    turtle.pendown()
    turtle.pensize(25)
    turtle.color("yellow")
    turtle.seth(-40)
    for i in range(4):
        turtle.circle(40,80)
        turtle.circle(-40,80)
        
        
     
    turtle.circle(40,80/2)
    turtle.fd(40)
    turtle.circle(16,180)
    turtle.fd(40 * 2/3)
     
    turtle.done()

    效果图如下

    6c00d884ab219d1c6aef59e8222f720.png

    追加一个五彩蟒蛇代码。。。。。其实都一样,颜色可以随便改的,五彩的就是加了一个列表,把里面的元素顺序传给turtle.color()中。

    #五彩蟒蛇绘制
    import turtle
     
    a = ['red','orange','yellow','green','blue','purple']
     
    turtle.setup(1250,400,50,50)
    turtle.penup()
    turtle.fd(-550)
    turtle.pensize(50)
    turtle.pendown()
    turtle.pencolor()
    turtle.speed(5)
     
    for i in range(5):
        turtle.pencolor(a[i])
        turtle.seth(60)
        turtle.circle(-60,120)
        turtle.seth(120)
        turtle.circle(-60,-120)
     
        
    turtle.seth(20)
    turtle.fd(60)
    turtle.circle(-30,180)
    turtle.fd(60 * 1/3)
     
    turtle.hideturtle()
    turtle.done()

    18588f022be3cf47bff42c71614415c.png

    专题推荐:会图库
    上一篇:为什么我劝你别盲目追风Python? 下一篇:大意了,这几道Python面试题没有答对,Python面试题精选

    相关文章推荐

    • Python如何运用matplotlib库绘制3D图形• Python如何运用turtle绘制阴阳太极图• 入门Python必读的流程控制语句

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网