(008)我們一起學Python;總結--序列類方法

雪山斐胡發表於2018-06-20

我們把 列表、字串、元組統稱為 序列。他們有很多相似點,

下面介紹幾個類方法:

①list方法--建立列表

    >>> list("fuck you")                    #字串建立列表
    ['f', 'u', 'c', 'k', ' ', 'y', 'o', 'u']

    >>> list((1,2,4,5,36,7,8,99))        #將元組的元素放進列表
    [1, 2, 4, 5, 36, 7, 8, 99]
②tuple()將可迭代的物件轉換為元組

    >>> tuple("fuck you")
    ('f', 'u', 'c', 'k', ' ', 'y', 'o', 'u')


    >>> tuple(['a','b','c'])
    ('a', 'b', 'c')
③str(obj)將obj物件轉化為字串

    >>> str(float(32*5)+int(32.5))
    '192.0'
④len()

    >>> len('max'+'min')
    6

⑤max()

    >>> max([1,2,3,4,5,6,7,8,99])
    99


    >>> max((1,2,9,"wo"))        #在使用max和min方法時,序列中必須是同型別的元素。

    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: '>' not supported between instances of 'str' and 'int'

⑥min()

    >>> list1 = [3,3,45,67,89]
    >>> min(list1)
    3

⑦sum(),直接sum(list1+list2)會出錯

    >>> list3 = list1 + lsit2
    >>> sum(list3)
    369.769

    >>> sum(list3,1)        帶引數的會加上引數位置的數
    370.769

⑧sorted()    

>>> sorted(list3)
[3, 3, 45, 49.569, 56.3, 56.9, 67, 89]

⑨reversed()  倒序方法,直接呼叫返回物件,類方法呼叫可以返回序列

    >>> list(reversed(list3))

    [49.569, 56.9, 56.3, 89, 67, 45, 3, 3]

⑩enumerate(),列舉方法,給每一個元素貼標籤號碼

    >>> list(enumerate(list3))
    [(0, 3), (1, 3), (2, 45), (3, 67), (4, 89), (5, 56.3), (6, 56.9), (7, 49.569)]

list類方法生成的是一個list,呼叫enumerate方法得到的內部為 元組 

11 zip()打包方法,成雙成對,殺死單身狗你的方法

                                            (非常尷尬,我不知道怎麼打帶括號的11...)

    >>> a = ['a','v','p','o','r','n']
    >>> man = a
    >>> women = [6,2,3,5,7]
    >>> list(zip(man,women))

    [('a', 6), ('v', 2), ('p', 3), ('o', 5), ('r', 7)]

同學們可以發現,zip方法是把兩個列表的內容成雙成對的放到了一起,元組的形式,多的man列表元素直接幹掉了...男同胞們得努力。









相關文章