说到用python画画,那当然就是小乌龟Turtle库了,为啥是turtle呢想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。

一、安装与引入

安装没有什么难度直接pip安装就可以

pip install turtle

可使用以下3种方法引入:

二、使用

turtle库使用起来也很简单,主要就是利用几个核心的控制代码


turtle.goto(x,y):直接跳转到(x,y)点,以绘图窗口中心为原点,

turtle.fd(d):以当前方向,往前行进d像素。

turtle.bk(d):保持当前方向不变,往后退行d像素。

turtle.circle(r,angle):以r为半径圆的angle角度旋转。

turtle.penup():抬笔

turtle.pendown():落笔

urtle.left(angle):向左旋转angle度。

turtle.right(angle):向右旋转angle度。


比如绘制树干部分的代码可以这样写


def Tree(branch, t):
    time.sleep(0.0005)
    if branch > 3:
        if 6 <= branch <= 12: #
            if random.randint(02) == 0: #随机绘制
                t.color('snow'#设置颜色
            else:
                t.color('lightcoral'# 树叶颜色
            t.pensize(branch / 3)
        elif branch < 6:
            if random.randint(01) == 0:
                t.color('snow')
            else:
                t.color('lightcoral'#
            t.pensize(branch / 2)
        else:
            t.color('sienna'# 赭(zhě)色
            t.pensize(branch / 10# 6
        t.forward(branch)
        a = 1.5 * random.random()
        t.right(20 * a)
        b = 1.5 * random.random()
        Tree(branch - 10 * b, t)
        t.left(40 * a)
        Tree(branch - 10 * b, t)
        t.right(20 * a)
        t.up()
        t.backward(branch)
        t.down()

而写字的部分就不用一笔一划的去绘制,直接使用turtle.write()就可以在指定位置写上你需要的文字。

write(arg,move=false,align='left',font=('arial',8,'normal'))

#arg--将写入Turtle绘画屏幕的文字。

#align(可选)--“左(left)”、“中(center)”或“右(right)”之一。

#font(可选)--fontnamefontsizefonttype)。


完整代码可以在早起python公众号内回复樱花获取,那么来看看最后效果吧


©著作权归作者所有:来自51CTO博客作者mb5fe18e32e4691的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. PHP自定义函数+系统函数库(代码示例)
  2. 如何将smarty安装到MVC架构中(代码示例)
  3. PHP 跨域之header函数(代码示例)
  4. PHP+Ajax实现文章心情投票功能(代码实例)
  5. PHP+jQuery开发简单翻牌抽奖的功能(代码实例)
  6. PHP-Curl模拟HTTPS请求(代码实例)
  7. PHP使用递归按层级查找数据(代码详解)
  8. 关于php多进程编程(代码详解)
  9. 用PHP写一个计算器(附完整代码)

随机推荐

  1. Android视频开发国人开发的Vitamio开源项
  2. Android局部布局替换实现
  3. Android(安卓)获取网络状态的工具类
  4. android学习之LinearLayout
  5. Android版本与Linux内核的关系
  6. 让Activity变成一个窗口
  7. Android(安卓)Studio 运行出现 Multiple
  8. Android学习资源
  9. android中的自定义控件
  10. Android 源码分析 —— 从 Toast 出发