美文网首页
Python Day19 序列

Python Day19 序列

作者: 读书的番茄 | 来源:发表于2017-05-17 15:24 被阅读0次

    1,迭代(iteration)(之前记过一次迭代的定义,但是发现还是记得不熟,再写一遍!)

    迭代是重复反馈过程的活动,其目的通常是为了逼近所需目标或结果。每一次对过程的重复称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的初始值。

    2,list(),把可迭代的对象转换为列表

    >>> c = 'i love python!'
    >>> c1 = list(c)
    >>> c1
    ['i', ' ', 'l', 'o', 'v', 'e', ' ', 'p', 'y', 't', 'h', 'o', 'n', '!']
    
    >>> d = (1, 1, 2, 3, 5, 8, 13, 21, 34, 55)
    >>> d
    (1, 1, 2, 3, 5, 8, 13, 21, 34, 55)
    >>> d = list(d)
    >>> d
    [1, 1, 2, 3, 5, 8, 13, 21, 34, 55]
    

    3,tuple(),把可迭代的对象转换为元组

    >>> d = tuple(d)
    >>> d
    (1, 1, 2, 3, 5, 8, 13, 21, 34, 55)
    

    4,str(),把对象转换为字符串

    >>> a
    [0, 1, 2, 3, 4, 5, 6]
    >>> str(a)
    '[0, 1, 2, 3, 4, 5, 6]'
    

    4,len(),返回对象的长度

    >>> a
    [0, 1, 2, 3, 4, 5, 6]
    >>> len(a)
    7
    

    5,max(),返回序列中参数的最大值

    >>> a
    [0, 1, 2, 3, 4, 5, 6]
    >>> c
    'i love python!'
    >>> max(a)
    6
    >>> max(c)
    'y'
    

    c中最大返回的是y,是因为y的ASCII最大

    6,min(),返回序列中参数的最小值

    >>> e = (1, 0, -1, 2, 3, -3)
    >>> min(e)
    -3
    

    注意

    >>> a
    [0, 1, 2, 3, 4, 5, 6, 'a']
    >>> max(a)
    Traceback (most recent call last):
      File "<pyshell#57>", line 1, in <module>
        max(a)
    TypeError: '>' not supported between instances of 'str' and 'int'
    >>> min(a)
    Traceback (most recent call last):
      File "<pyshell#58>", line 1, in <module>
        min(a)
    TypeError: '<' not supported between instances of 'str' and 'int'
    

    max()和min()方法,要求序列中所有参数类型一致

    7,sum(iterable[, start=0]),返回序列iterable和可选参数start的总和

    >>> b
    [6, 7, 8, 9, 10, 11, 12]
    >>> sum(b)
    63
    >>> a
    [0, 1, 2, 3, 4, 5, 6, 'a']
    >>> sum(a)
    Traceback (most recent call last):
      File "<pyshell#64>", line 1, in <module>
        sum(a)
    TypeError: unsupported operand type(s) for +: 'int' and 'str'
    

    列表a中,含有字符a

    8,sorted(),根据序列中参数的大小,由小到大进行排序

    >>> e
    (1, 0, -1, 2, 3, -3)
    >>> sorted(e)
    [-3, -1, 0, 1, 2, 3]
    

    9,reversed(),根据序列中的参数,返回一个倒序排列的列表

    >>> e
    (1, 0, -1, 2, 3, -3)
    >>> reversed(e)
    <reversed object at 0x0310B590>
    >>> list(reversed(e))
    [-3, 3, 2, -1, 0, 1]
    

    reversed(e),直接使用的话返回的是迭代器对象,因此需要把结果转换成list。

    10,enumerate(),用序列中每个参数的索引值,依次与参数组成新的元组

    >>> a
    [0, 1, 2, 3, 4, 5, 6, 'a']
    >>> list(enumerate(a))
    [(0, 0), (1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 'a')]
    

    11,zip(),用2个不同的序列中的参数,根据索引值组成新的元组

    >>> a
    [0, 1, 2, 3, 4, 5, 6, 'a']
    >>> b
    [6, 7, 8, 9, 10, 11, 12]
    >>> list(zip(a, b))
    [(0, 6), (1, 7), (2, 8), (3, 9), (4, 10), (5, 11), (6, 12)]
    

    相关文章

      网友评论

          本文标题:Python Day19 序列

          本文链接:https://www.haomeiwen.com/subject/rufdxxtx.html