序列都可以進行的操作包括索引,切片,加,乘,檢查成員。
python有6個序列的內建型別,但最常見的是列表和元組。
列表的資料項不需要具有相同的型別。
>>> list01 = ['runoob', 786, 2.23, 'john', 70.2]
>>> list02 = [123, 'john']
>>> names = ['a','b','c','d']
擷取
和大多數程式語言一樣,列表的第乙個元素的索引是0,而不是1。如果要輸出最後乙個元素可以使用-1,倒數第二個可以使用-2,以此類推。
>>>
print names[0]
>>>
print names[-1]
>>>
print names[0:3]ad
['a', 'b', 'c']
修改/新增/刪除
修改:其實就是對元素的重新賦值
>>> names[0]='a'
>>> print(names)
['a', 'b', 'c', 'd']
>>> print(names)
['a', 'b', 'c', 'd', 'e']
刪除:pop,remove,del
1) pop()
>>> names.pop()
'e'
如果沒有指定下標,則缺省會刪除最後乙個元素
>>> names.pop(2)
'c'
2) remove()
>>> names.remove('e')
>>> names
['a', 'b', 'c', 'd']
3)del
>>>
del names[4]
>>> names
['a', 'b', 'c', 'd']
查詢元素所在位置:index()
>>> names.index('c')
2
統計元素的次數:count()
>>> names.count('d')
2反轉:reverse()
>>> names.reverse()
>>> names
['d', 'c', 'b', 'a']
清空:clear()
>>> names.clear()
>>> names
插入: insert(索引,字串)
>>> names.insert(0,'hello')
>>> print(names)
['hello', 'a', 'b', 'c', 'd']
排序:sort()按照ascii碼來進行排序
>>> names.sort()
>>> print(names)
['a', 'b', 'c', 'd', 'hello']
拼接兩個列表:extend()
>>> names = ['a','b','c','d']
>>> place = ['o','p','q']
>>> names.extend(place)
>>> print(names)
['a', 'b', 'c', 'd', 'o', 'p', 'q']
>>> names = ['a','b','c','d']
>>> names1 = names
>>> names1[0] = 'a'
>>> print(id(names),' ',names)
>>> print(id(names1),' ',names1)
140132297498568 ['a', 'b', 'c', 'd']
140132297498568 ['a', 'b', 'c', 'd']
我們發現,修改names1影響了names,這是因為通過id函式發現,二者的id是相同的。(此時相當於共用乙個記憶體空間)。
>>> names = ['a','b','c','d']
>>> names1 = names[:]
>>>
#names1 = list(names) #效果同上
>>>
#names1 = [i for i in names] #效果同上
>>>
#names1=copy.copy(names) #效果同上
>>> names1[0] = 'a'
>>> print(id(names),' ',names)
>>> print(id(names1),' ',names1)
140165287773768 ['a', 'b', 'c', 'd']
140165287334472 ['a', 'b', 'c', 'd']
>>>
import copy
>>> names = ['a','b','c','d']
>>> names1=copy.deepcopy(names)
>>> names1[0] = 'a'
>>> print(id(names),' ',names)
>>> print(id(names1),' ',names1)
140635533511880 ['a', 'b', 'c', 'd']
140635533584200 ['a', 'b', 'c', 'd']
二者id不同,深複製後的兩個變數則指向的是兩個不同的物件。 STL學習筆記2 list
list 雙向列表 1 不使用連續的記憶體空間這樣可以隨意地進行動態操作 2 可以在內部任何位置快速地插入或刪除,當然也可以在兩端進行push和pop 3 不能進行內部的隨機訪問,即不支援 操作符和vector.at 大多數函式和vector的類似,這裡就不解釋了,有幾個不一樣的如下 merge 合...
python基礎學習2 list與tuple
列表list,字典是可變資料型別,列表項有順序 字串,元組tuple是不可變型別 迴圈列表 import random list1 pens bags dogs cows for i in range len list1 print index str i is list1 i print list...
python快速入門(2)List
二.list結構 1.定義list型別 months print type months 新增什麼值都行 months print type months print months 如何查詢list當中的元素呢?3.取list中元素,定義index 索引 索引 index 從0開始 例如 直接通過i...