python的听课笔记案例2--分形树草图2.0

原创
小哥 3年前 (2022-11-02) 阅读数 9 #大杂烩

上一篇文章介绍了如何画五角星。现在我们想画一颗重复不同大小的五角星。好好利用它。while条件:

直接代码:

"""
    作者:lanxingbudui
    功能:画一颗五角星
    版本:2.0
    日期:20190226
    增强:增加循环操作,绘制不同大小的重复图形。
"""
import turtle

def main():
    """
        主函数
    """
    # 设置画笔的颜色和厚度。
    turtle.pencolor(red)
    turtle.pensize(2)
    size = 100
    while size <= 200:
        # 画一颗五角星
        count = 0
        while count < 5:
            turtle.forward(size)
            turtle.right(144)
            count = count + 1
        size = size + 20
    # 单击鼠标可退出
    turtle.exitonclick()

if __name__ == __main__:
    main()

运行结果如下:

当我们设计程序时,我们不仅需要满足我们的要求,还要求代码简单,运行效率高。我们如何考虑优化代码?

1,使程序运行速度更快;

2,使代码更加简洁。

优化以上代码:

"""
    作者:lanxingbudui
    功能:画一颗五角星
    版本:2.0
    日期:20190226
    增强:增加循环操作,绘制不同大小的重复图形。
"""
import turtle

def draw_pentagram(size):
    """
        画一颗五角星
    """
    # 画一颗五角星
    count = 0
    while count < 5:
        turtle.forward(size)
        turtle.right(144)
        # count = count + 1
        count += 1

def main():
    """
        主函数
    """
    turtle.pencolor(red)
    turtle.pensize(2)
    size = 100
    while size <= 200:
        draw_pentagram(size)
        # size = size + 20
        size += 20
    # 单击鼠标可退出
    turtle.exitonclick()

if __name__ == __main__:
    main()

这样做的目的是使Main函数更简洁和更具可读性。

turtle 图书馆增刊:

turtle 图书馆增刊:
刷子控制功能,
turtle.penup()提起画笔,然后移动画笔,而不画出形状;
turtle.pendown()落下刷子,然后移动刷子画出形状;
turtle.pensize()设置笔刷宽度;
turtle.pencolor()设置画笔颜色、常用颜色:
white/black/grey/darkgreen/gold/voilet/purple

还有很多关于turtle这里不再解释了。提供正式文件地址:

https://docs.python.org/3.0/library/turtle.html

自己的计划在2019年3在一月,把这个网站的英文翻译成中文!

版权声明

所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除