1. 程式人生 > >python--元組tuple

python--元組tuple

python 元祖

************** 元組tuple ***************

  1. 元組的定義
    - 定義空元組
    tuple = ()
    - 定義單個值的元組
    tuple = (fentiao,)
    - 一般的元組(元素有列表,元組,字符)
    tuple = (fentiao, 8, male)

    >>> t = (1,2,(1,2),[1,2])
    >>> type(t)
    <type ‘tuple‘>
    >>> t[2]
    (1, 2)

    >>> a=t[2]
    >>> type(a)
    <type ‘tuple‘>

  2. 技術分享

  3. 為什麽需要元組?
    >>> userinfo1 = "fentiao 4 male"
    >>> userinfo2 = "westos 10 unknown"
    >>> userinfo1[:7]
    ‘fentiao‘

    >>> userinfo2[:6]
    ‘westos‘
    字符串中操作提取姓名/年齡/性別的方式不方便,誕生元組與列表這兩個數據類型
    >>> t1 = ("fentiao",4,"male")

    >>> t2 = ("westos", 10, "unknown")
    >>> type(t1)
    <type ‘tuple‘>
    >>> type(t2)
    <type ‘tuple‘>

    技術分享

  4. 元組特性
    不能對元組的值任意更改;元組特性

    >>> t1
    (‘fentiao‘, 4, ‘male‘)
    >>> t1[1] = 5
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    TypeError: ‘tuple‘ object does not support item assignment
    對元組分別賦值,引申對多個變量也可通過元組方式分別賦值執行操作並思考
    >>> t1
    (‘fentiao‘, 4, ‘male‘)
    >>> name,age,gender=t1
    >>> print name,age,gender
    fentiao 4 male
    技術分享
    >>> a,b,c=(1,2,3)
    >>> print a,b,c
    1 2 3
    註意:C語言中,定義一類型,必須先開辟一存儲空間,當後期重新賦值時也一定是整型的;
    python中,先在內存上存儲數據後,再通過標簽去引用。不同的字符串占用不同的存儲空間。
    >>> str1
    ‘12345‘
    >>> id(str1)
    140205776037520
    >>> str1 = "abcde"
    >>> id(str1)
    140205776037424
    >>> str2 = "12345"
    >>> id(str2)
    140205776037520

  5. 元祖修改

    技術分享

  6. 元組的操作
    元組也屬於序列,可執行的操作如下:
    索引、切片、重復、連接和查看長度技術分享

    1).元組的索引和切片
    >>> t1[0]
    ‘fentiao‘
    >>> t2[0]
    ‘westos‘
    >>> t2[0:2]
    (‘westos‘, 10)


    技術分享

  7. 刪除元組

    t = (1,2,3)

    >>>del(t)技術分享


  8. 元組的比較

    >>> t = (1,2,3)
    >>> len(t)
    3
    >>> cmp(t,(1,2)) --元組t與(1,2)比較如果t包含(1,2)結果為1,否則為-1
    1
    >>> cmp(t,(1,2,3,4,5))
    -1

    技術分享


  9. 元組的方法
    t.count(value)-->int
    返回value在元組中出現的次數;
    t.index(value)
    返回value在元組中的偏移量(即索引值)

    技術分享

python--元組tuple