首页 > 编程语言 > 详细

python 笔记7

时间:2019-12-28 16:39:44      阅读:173      评论:0      收藏:0      [点我收藏+]

1、内建函数:

  (1)、sorted(iterable[,key][,reverse])排序

    返回一个新的列表,默认升序

    reverse是反转,当reverse是True时进行反转

  (2)、chr(i)给一个一定范围的整数返回对应的字符

       例: chr(97)

     ord(c)返回字符对应的整数

       例:ord(‘a‘)

  (3)、翻转reversed(seql)

        返回一个翻转元素的迭代器

        那么我们可以对它进行next()操作

  (4)、枚举 enumerate(seq,start=0)

        迭代一个序列,返回索引数字和元素构成的二元组

        start表示索引开始的数字,默认为0,枚举的元素并没有少,只是索引的开始位置做了偏移。枚举生成的也是一个迭代器

  (5)、迭代器和取元素iter(iterable)、next(iterator)

        iter将一个可迭代器对象封装成一个迭代器

        next对一个迭代器取下一个元素。如果全部元素都取过了,再次next会抛异常

例:it=iter(range(5))

  next(it)

    

  it=reversed([1,4,5])

  next(it)

  (6)、拉链函数zip(*iterables)

      像拉链一样,把多个可迭代对象合并在一起,返回一个迭代器;将每次从不同对象中取到的元素合并成一个元素。“木桶原理”,最终合成的迭代器按最短的那个迭代器长度

  例、list(zip(range),range(10)))

    

  dict(zip(range(10),range(10))) #用于生成字典很方便,前面的作为key,后面的作为value

    {str(x):y for x,y in zip(range(10),range(10))} #用到了解构

    {str(x):y for x,_,y in zip(range(10),range(10),range(10,20))} 

2、可迭代对象

  能够通过迭代一次次返回不同的元素对象,所谓相同不是指值是否相同,而是元素在容器中是否是同一个;可以迭代但未必有序,未必可以索引;可迭代对象有:list、tuple、 string、bytes、bytearray、range、set、dict、生成器等;可以使用成员操作符in、not in ,in本质上就是遍历对象  

3、迭代器

  特殊的对象,一定是可迭代器对象,具备可迭代对象的特征;通过iter方法把一个可迭代对象封装成迭代器;通过next()方法,迭代 迭代器对象;生成器对象就是迭代器对象。迭代器不一定是生成器,生成器是一个惰性(按需)求值的过程 

python 笔记7

原文:https://www.cnblogs.com/mapone/p/12046707.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!