python基础语法(二)基本扩展模块:海龟作图

turtle模块:内置模块,从LOGO语言借鉴而来
属性包括位置、方向、画笔(颜色、线条宽度等)
指令:画笔运动命令
    前/后移动,左/右移动、作画速度等
画笔控制命令
拾起/放下、画笔宽度、画笔颜色、填充颜色等

>>> import turtle     #导入模块
>>> p = turtle.Pen()     #创建一支画笔(海龟)
>>> p.pencolor('blue')     #设置画笔颜色为蓝色
>>> p.pensize(5)     #设置画笔的粗细为5
>>> p.forward(100)
>>> p.left(120)
>>> p.forward(100)
>>> p.left(120)
>>> p.forward(100)
>>> p.left(120)

绘制简单图形
画直线:
import turtle

t = turtle.Turtle()
w = turtle.Screen()
t.forward(100)

turtle.done()

画正方形:
import turtle

t = turtle.Turtle()
w = turtle.Screen()
for i in range(4):
    t.forward(100)
    t.right(90)

turtle.done()

画五角星:
import turtle

t = turtle.Turtle()
w = turtle.Screen()
for i in range(5):
    t.forward(100)
    t.right(144)

turtle.done()

绘制树图形:调用递归画树
注意海龟作图的次序:先画树干,再画右树枝,最后画左树枝;与递归函数里的流程一致
import turtle

def tree(branchLen,t):
    if branchLen > 5:
        t.forward(branchLen)
        t.right(20)
        tree(branchLen-15,t)
        t.left(40)
        tree(branchLen-15,t)
        t.right(20)
        t.backward(branchLen)
def main():   
    t = turtle.Turtle()
    mywin = turtle.Screen()     #生成海龟
    t.left(90)
    t.up()
    t.backward(100)
    t.down()              #海龟位置调整
    t.color("green")
    tree(75,t)    #画树,树干长度75
    mywin.exitonclick()

main()
turtle.done()

绘制分形图:
分形(fractal)的基本概念
类似二叉树,部分与整体以某种方式相似的形体
"分形学之父" 数学家曼德勃罗(Benoit B. Mandelbrot)
分形图:曼德勃罗集
龙形曲线:自相似分形曲线
希尔伯特(Hilbert)曲线:空间填充曲线,可以线性地贯穿二维或者更高维度的每个离散单元并进行排序和编码;可用于将高维空间中没有良好顺序的数据映射到一维空间
谢尔宾斯基三角形:由三个相同的谢尔宾斯基三角形按照品字形拼叠而成;面积为0,周长为无穷大;我们只能画出维数(degree)有限的近似图形

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值