Python知识整合(三)

博客主要整合了Python相关知识,包括切片的取值规则,如取第0到n个但不包括第n个等;迭代中判断可迭代对象、实现下标循环的方法;生成器的转变方式;迭代器的特点;以及map()和reduce()函数的使用,如map第一个参数为函数,第二个为序列等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 切片:

    • L[0:n]:表示取第0到n个,但不包括第n个(0可以省略简写为L[:n]
    • L[0:n:k]:表示从0开始,每间隔k个取一次值,直到n(同样边界不包括n)
    • L[-1:]:表示取最后一个,而L[-1:X]:(X表示任意值)只表示空list,意思为最后一个到最后,当然没有值了
  • 迭代:

    • 判断一个对象是否是可迭代对象:通过collections模块的Iterable进行类型判断
    • list实现下标循环可用enuemrate函数将其变为索引-元素对,start参数设置下标开始号
    • 迭代基本方法:for ... in ...
  • 生成器:

    • list[]变为()就转变为了生成器
    • 一个函数中包含yield关键字,函数转变为生成器。运用时,yield为一个节点,就像return一样.
    • for循环时,想要拿到return的值,必须捕获StopIteration错误,其值在StopIterationvalue中,注意要导入模块form collection import Iterator
  • 迭代器:

    • list,dic,setIterable而不是Iterator,但可通过iter()函数将其变成Iterator
    • Iterator是惰性计算,需要值的时候才计算出来
  • map()和reduce():

    • map:第一个参数为函数,第二个参数为Iterable,得到的结果为Iterator
    • reduce:需要引入模块from functools import reduce。传入两个参数,第一个参数为函数,第二个参数为序列,把结果继续和序列的下一个元素做累计计算

请继续阅读Python知识整合(四)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值