# 第二章:列表和元組
序列中,每個元素都有個乙個序號,序號以0開始,最後乙個元素序號為-1,倒數第二個-2
序列型別包括,列表,元組,字串,unicode字串,buffer, xrange
列表可以修改,元組不可以修改,元組可以作為字典的key,列表不可以
列表中的元素可以是各種型別,各元素通過逗號分隔,寫在方括號中
>>> edward=["edward", 42]
>>> print edward
['edward', 42]
>>>
>>> print edward[0]
edward
>>> print edward[1]
42>>> print edward[2]
traceback (most recent call last):
file "", line 1, in
indexerror: list index out of range
>>> print edward[-1]
42>>> print edward[-2]
edward
>>> print edward[-3]
traceback (most recent call last):
file "", line 1, in
indexerror: list index out of range
使用索引訪問序列中的乙個元素
使用分片訪問一定範圍內的元素,通過冒號分隔的兩個索引來獲取分片[begin,end],內容包含begin到end之間的元素,不包含end所在位置的元素,
如果end大於最大的索引號,則返回包含最末尾的元素為止
如果end小於begin,返回空分片
如果end缺失,則返回begin之後剩餘所有的元素,包含begin位置
如果begin缺失,則返回end之前的所有的元素
如果begin,end都缺失,返回所有元素
>>> numbers=[1,2,3,4,5,6,7,8,9,10]
>>> numbers[3:6]
[4, 5, 6]
>>>
>>> numbers[7:12]
[8, 9, 10]
>>> numbers[7:4]
>>> numbers[7:]
[8, 9, 10]
>>> numbers[:3]
[1, 2, 3]
>>> numbers[:]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>>
分片的步長[being:end:step],step表示遍歷元素使用的步長,即每隔step個元素,step預設為1,
>>> numbers[0:10:2]
[1, 3, 5, 7, 9]
step不可以為0,可以為負,表示從右到左提取元素
>>> numbers[8:3:-1]
[9, 8, 7, 6, 5]
>>>
序列相加:使用加號,相同型別的序列才可以相加
>>> c=[1,2,3]
>>> d=["a", "b", "c"]
>>> c+d
[1, 2, 3, 'a', 'b', 'c']
>>> e="helloworld"
>>> c+e
traceback (most recent call last):
file "", line 1, in
typeerror: can only concatenate list (not "str") to list
>>>
序列乘法:數字x可以序列,表示原來的序列重複x次
>>> "python"*3
'pythonpythonpython'
>>>
none:表示空值,但是占有乙個元素的位置
>>>
>>> [none]
[none]
>>>
查詢:in
>>> 1 in numbers
true
>>> 122 in numbers
false
>>>
長度:最小最大值
>>> len(numbers)
10>>> max(numbers)
10>>> min(numbers)
1>>>
list:將字串轉為序列
>>> list("helloworld")
['h', 'e', 'l', 'l', 'o', 'w', 'o', 'r', 'l', 'd』]
修改一元素
>>> l[4:]=list("cn")
>>> l
['h', 'e', 'l', 'l', 'c', 'n']
>>>
刪除元素:del
>>> del l[1]
>>> l
['h', 'l', 'l', 'o', 'w', 'o', 'r', 'l', 'd']
>>>
修改多個元素
>>> l[4:]=list("cn")
>>> l
['h', 'l', 'l', 'o', 'c', 'n']
>>>
插入元素
>>> l
['h', 'l', 'l', 'o', 'c', 'n']
>>> l[1:1]="e"
>>> l
['h', 'e', 'l', 'l', 'o', 'c', 'n']
>>>
>>> l[5:5]=", world"
>>> l
['h', 'e', 'l', 'l', 'o', ',', ' ', 'w', 'o', 'r', 'l', 'd', 'c', 'n']
>>>
刪除多個元素
>>> l[-2:]=
>>> l
['h', 'e', 'l', 'l', 'o', ',', ' ', 'w', 'o', 'r', 'l', 'd']
>>>
>>> del l[-5:]
>>> l
['h', 'e', 'l', 'l', 'o', ',', ' ']
>>>
列表的常用方法
apend:追加新元素
>>> lst
[1, 2, 3]
>>> lst
[1, 2, 3, 4]
count:統計元素出現的次數
>>> lst.count(3)
1>>>
extend:追加乙個列表
>>> lst
[1, 2, 3, 4]
>>> a
[5, 6, 7]
>>> lst.extend(a)
>>> lst
[1, 2, 3, 4, 5, 6, 7]
index:查詢第乙個次出現的位置
>>> lst.index(3)
2insert:插入元素
pop:移除乙個元素(預設是最後乙個),並且返回該元素的值
>>> lst.pop()
7remove:移除第乙個匹配元素,改變列表,無返回值
>>> lst.remove(2)
>>> lst
[1, 3, 4, 5, 6]
>>>
reverse:反轉列表,改變列表,無返回值
>>> lst.reverse()
>>> lst
[6, 5, 4, 3, 1]
>>>
sort:排序,改變列表,無返回值
>>> lst.sort()
>>> lst
[1, 3, 4, 5, 6]
>>>
sort(key=cmp,reverse=false)的引數:key比較函式,reverse反向排序
—————————————————————
## 元組:不可改變的序列
以逗號分隔的包含在圓括號內的值,稱為元組,圓括號可以省略
>>> a=1,2,3,4,
>>> a
(1, 2, 3, 4)
>>>
包含乙個元素的元組,需要在元素後新增逗號
>>> a=1,
>>> a
(1,)
>>> a=(1,)
>>> a
(1,)
>>> 3*(40+2,)
(42, 42, 42)
>>>
tuple:將列轉為元組
>>> l
[1, 2, 3, 4]
>>> tuple(l)
(1, 2, 3, 4)
>>>
Python 學習筆記 2 列表
一 列表 列表中的元素可以改變,元組中的元素不可以改變。sr 建立列表的兩個方式 sr list s aiqingzhuanyi list s 將別的型別轉換成列表型別 out 5 a i q i n g z h u a n y i 使用偏移量獲取列表中對應位置的元素 sr a b c d sr 0...
python學習筆記2 列表
1.列表簡介 列表 由一系列按特定順序排列的元素組成。你可以建立包含字母表中所有字母 數字0 9或所有家庭成員姓名的列表 也可以將任何東西加入列表中,其中的元素之間可以沒有任何關係。鑑於列表通常包含多個元素,給列表指定乙個表示複數的名稱 如letters digits 或names 是個不錯的主意。...
Python學習筆記2(列表簡介)
2.1 列表是什麼 列表是由一系列按特定順序排列的元素組成。在python中,用方括號 來表示列表,並用逗號來分隔其中的元素。names chenjiahe maxin chenxiangqin chenguanxi print names 輸出的列表內容包括方括號 chenjiahe maxin ...