#Python入门(七)##太原理工大学机器人团队20天学习打卡day7

今日主讲递归序列类型及操作
递归
递归的定义:函数定义中调用函数自身的方式(数学归纳法思维的编程体现)
在这里插入图片描述两个关键特征:
链条:计算过程中存在递归链条
基例:存在一个或多个不需要再次递归的基例

在这里插入图片描述
下面通过科赫雪花来掌握递归

#draw.py
import turtle
def koch(size, n):
    if n == 0:
        turtle.fd(size)
    else:
        for angle in [0, 60, -120, 60]:
            turtle.left(angle)
            koch(size/3, n-1)#递归
def main():
    turtle.speed(30)
    turtle.setup(1000,700,100,100)
    turtle.penup()
    #以下是小编为了使图形更好看,各位添加的
    turtle.goto(20,30)
    turtle.begin_fill()
    turtle.pendown()
    turtle.circle(150,360)
    turtle.fillcolor('yellow')
    turtle.end_fill()
    turtle.penup()
    turtle.goto(20,30)
    turtle.begin_fill()
    turtle.pendown()
    turtle.circle(-150,360)
    turtle.fillcolor('blue')
    turtle.end_fill()
    turtle.penup()
    turtle.goto(-80,120)
    turtle.begin_fill()
    turtle.pendown()
    turtle.pensize(2)
    koch(200,3)
    turtle.right(90)
    koch(200,3)
    turtle.right(90)
    koch(200,3)
    turtle.right(90)
    koch(200,3)
    turtle.fillcolor('red')
    turtle.end_fill()
    turtle.hideturtle()
    turtle.done()
main()

在这里插入图片描述序列类型及操作
列表是一种序号类型,创建后可以随意被修改,使用[]或set()创建,元素间用逗号分隔,列表中元素类型可以不同,无长度限制
ls=[‘TYUT’,2020,‘happy’]
在这里插入图片描述由于列表类型在今后的使用中及其重要,所以我们通过一些例子来体会一样

定义空列表lt >>>lt=[ ]
■向lt新增5个元素 >>> lt +=[1,2,3,4,5]
■修改lt中第2个元素>>> lt[2] = 6
■向lt中第2个位置增加一 个元素>>> lt. insert(2, 7)
■从It中第1个位置删除一 个元素>>> del lt[1]
■删除lt中第1-3位置元素>>> del lt[1:4]
■判断|t中是否包含数字0>>0inlt
■向|t新增数字0>>> lt. append(0)
■返回数字0所在It中的索引>>> lt. index(0)
■lt的长度>>> len(lt)
■It中最大元素>>> max(lt)
■清空lt>>> lt. clear()

最后补充一下集合类型的重要应用(注意跟上面不是一个类型的):
数据去重:集合类型所以元素无重复,利用这个性质可以去除数据中重复的数据
ls = [“p”, “p”, “y”,“y”, 123]
s = set(ls)利用了集合无重复元素的特点
{‘p’, ‘y’, 123}
lt = list(s)还可以将集合转换为列表
[‘p’, ‘y’, 123]

因为小编挑的是重点讲,所以说有时会显得前后不衔接,还望体谅
今天就说到这,88

发布了13 篇原创文章 · 获赞 30 · 访问量 4978

猜你喜欢

转载自blog.csdn.net/weixin_46424753/article/details/104721458
今日推荐