python tuple和list

tuple

  1. 創建一個元組:

temp=(1,) #創建的元組只有一個元素,一定要加,不然會被默認爲temp是整形

  1. 更新一個元祖
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

classmates = ('Michael', 'Bob', 'Tracy')  
print('classmates =', classmates)                  #'Michael', 'Bob', 'Tracy'
print('len(classmates) =', len(classmates))        #3
print('classmates[0] =', classmates[0])            #'Michael',
print('classmates[1] =', classmates[1])            #'Bob',
print('classmates[2] =', classmates[2])            #'Tracy'
print('classmates[-1] =', classmates[-1])          #'Tracy'

classmates[0] = 'Adam'
結果:

Traceback (most recent call last):
  File "<input>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

元祖定義之後不可改變


namedtuple 可以用屬性來操作的tuple

可以簡單地表示一個座標作者一個圓。看例子:

from collections import namedtuple
Point=namedtuple('Point',['x','y'])
p=Point(1,2)
>>> p.x
1
>>> p.y
2
>>> isinstance(p, Point)
True
>>> isinstance(p, tuple)
True
# namedtuple('名稱', [屬性list]):
Circle = namedtuple('Circle', ['x', 'y', 'r'])

list

列表的操作
1. 插入

①insert(第幾個位置,需要插入的元素)

②列表.remove(元素)刪除列表中的元素

③使用deque高效插入和刪除雙向列表,但是使用它的特性函數,比如:`qppendleft()`時,它的類型就不是一個`list`,但是本質和list沒有區別。
```
>>> from collections import deque
>>> q=deque([1,2,3,4,5,6])
>>> q.append('x')
>>> q
deque([1, 2, 3, 4, 5, 6, 'x'])
>>> q.appendleft('y')
>>> q
deque(['y', 1, 2, 3, 4, 5, 6, 'x'])
>>> print(q)
deque(['y', 1, 2, 3, 4, 5, 6, 'x'])
>>> type(q)
<class 'collections.deque'>
>>> q[0]
'y'

```

`print([x for x in range(10) if x % 2 != 0])`
  1. 刪除

    ① del 列表名(元素)
    用del語句刪除列表的元素或整個列表

    ② pop() 出棧
    可以用pop(索引值)例如:pop(1)出棧列表中第1個元素。

  2. 鏈接

    +,使用+將兩個列表連接在一起。

    ,使用和對應的次數,使列表中的數據重複例如:

  3. 判斷

    in,判斷元素是否在列表中。 對:返回True,錯誤:返回False

    not in,判斷勻速是不是不在列表中。對:返回True,錯誤:返回False
    判斷只能判斷一層:

  4. 計算參數在列表中出現的次數

    列表.count(參數)

  5. 返回參數在列表中的位置

    列表.index(參數,起始位置,結束位置)

  6. 把列表中的元素翻轉

    列表.reverse()

  7. 用指定的方式對列表中的元素排序,默認方法是從小到大排序

    列表.sort(指定排序算法,算法指定的key,reverse=False)
    \ 默認算法/

  8. 列表.append(元素)

    在列表的末尾加入一個元素。

  9. 列表.extend(列表)

    擴張列表,使用列表將需要擴張的元素加入列表的末尾。

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

classmates = ['Michael', 'Bob', 'Tracy']
print('classmates =', classmates)
print('len(classmates) =', len(classmates))
print('classmates[0] =', classmates[0])
print('classmates[1] =', classmates[1])
print('classmates[2] =', classmates[2])
print('classmates[-1] =', classmates[-1])
classmates.pop()
print('classmates =', classmates)

結果:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章