python笔记(一)

 

一、dict and set

dict字典:根据key的值来找value的存放位置(哈希函数),所以key的值是不可变类型。

set集合:输入为一个list,但是会自动筛去重复的值,类似于将dict字典格式数据里的key存放起来。set也不可以存放可变对象。

不可变对象:不可变对象的类似replace()方法,本质上是变量指向的内容发生了变化,对象本身并没有变化。

tuple可以放在set、dict格式里边

 

二、生成器

通过列表生成器可以直接创建一个列表,但是受内存限制,生成器的存在就是只将列表生成方式赋给一个变量,而不是直接生成,解决内存问题。

遇到return就会结束,不会输出return语句,要想输出必须捕获stopIteration错误。

生成器可以进行迭代(for in)输出

示例:杨辉三角生成器代码

def yanghuisanjiao():
      y = [1]
      while True:
            yield y
            y = [1] + [y[i]+y[i+1] for i in range(len(y)-1)] + [1]
            #重新赋值

if __name__ == '__main__':
      n = 0
      for i in yanghuisanjiao():
            print(i)
            n = n +1
            if n == 2:
                  break
            

三、迭代器

可迭代对象(Iterator)表示的是一个数据流,它可以被next()函数调用得到下一个数据,可以将Iterator看成一个有序序列,但是我们并不能提前知道序列长度,只有需要数据的时候才会计算。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿德罗斯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值