画五角星

引入绘制图形的turtle库

import turtle
'''
    作者:Happy
    功能:五角星的绘制
    版本:1.0
    日期:2019/3/8
'''

import turtle
'''
turtle.foward(distance)
前进,从左往右
turtle.backward(distance)

turtle.right(degree)
前进方向转右
turtle.exitonclick()
'''

def main():
    '''
        主函数
    :return:
    '''

    count = 1
    
    while count <= 5:
        turtle.forward(100)
        turtle.right(144)
        count = count + 1

    turtle.exitonclick()


if __name__ == '__main__':
    main()

在这里插入图片描述

绘制不同大小的五角星

'''
    作者:Happy
    功能:五角星的绘制
    版本:2.0
    日期:2019/3/8
    新增功能:循环绘制不同大小的五角星
'''

import turtle
'''
turtle.foward(distance)
前进,从左往右
turtle.backward(distance)

turtle.right(degree)
前进方向转右

turtle.penup()

turtle.pendown()

turtle.pensize()

turtle.pencolor()
    white,black,grey,darkgreen,gold,ciolet,purple
    
turtle.exitonclick()

官方API
https://docs.python.org/3.0/library/turtle.html
'''

def draw_pentagram(size):
    '''
    绘制五角星
    :param size: 五角星的边长
    :return:
    '''
    # 计数器
    count = 1
    # 绘制五角星
    while count <= 5:
        turtle.forward(size)
        turtle.right(144)
        count += 1

def main():
    '''
        主函数
    :return:
    '''
    turtle.penup()
    turtle.backward(100)
    turtle.pendown()
    turtle.pensize(2)
    turtle.pencolor('red')

    size = 50
    while size <= 100:
        draw_pentagram(size)
        size += 10

    turtle.exitonclick()



if __name__ == '__main__':
    main()

在这里插入图片描述

迭代绘制五角星

递归:函数定义中调用函数自身
每次调用函数,函数参数会临时存储
注意一定需要终止条件

'''
    作者:Happy
    功能:五角星的绘制
    版本:3.0
    日期:3.10
    新增功能 1 :循环绘制不同大小的五角星
    新增功能 2 :使用递归(迭代)绘制五角星
'''
import turtle

def draw_recursive_pentagram(size):
    '''
        迭代绘制五角星
    '''
    count = 1
    while count <= 5:
        turtle.forward(size)
        turtle.right(144)
        count += 1

    #五角星绘制完成
    size += 10
    if size <= 100:
        draw_recursive_pentagram(size)

def main():
    '''
    主函数
    '''
    turtle.penup()
    turtle.backward(100)
    turtle.pendown()
    turtle.pensize(2)
    turtle.pencolor('blue')

    size = 50
    draw_recursive_pentagram(size)

    turtle.exitonclick()


if __name__=='__main__':
    main()

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42882887/article/details/88354921