列表是用方括號包圍的資料集合,不同的成員之間用逗號進行分隔,列表可以通過序號來進行訪問其中的成員,可以對列表進行排序、新增、刪除操作,改變列表中某一成員的值。
元組是以圓括號()包圍的資料集合,與列表不同的是,元組中的資料一旦確立就不能進行修改了。
成員是有序排列的,並且可以通過下標偏移量訪問到乙個或者是幾個成員,稱之為序列,包括:字串,列表和元組。
切片操作操作:[start:end:步長],當步長為-1的時候,相當於反轉操作。
python對列表常用操作如下:
列表操作
描述追加成員x
list.count(x)
計算列表中的引數x出現的次數
list.extend(l)
向列表中追加另乙個列表l
list.index(x)
獲得引數x在列表中的出現的第乙個位置
list.insert(index,value)
向列表中index位置插入資料value
list.pop(index)
刪除列表中index的成員,預設為最後乙個
list.remove(value)
刪除列表中的出現的第乙個成員value
list.reverse()
將列表中的成員順序顛倒
list.sort()
將列表中的成員排序
元組的操作只能做切片操作,如上的操作都是不可以做的,因為元組是不可變型別,對於列表,也是可以做切片操作的。
建立列表資料型別的時候,可以直接建立乙個空的或者是直接進行賦值,也可以使用工廠方法來進行建立,如下所示建立列表:
#建立列表並賦值
>>> alist = [123,"abc",4.56,['inner','list'],7-9j]
>>> alist
[123, 'abc', 4.5599999999999996, ['inner', 'list'], (7-9j)]
#建立乙個空列表
>>> alistthatstartedempty =
>>> print alistthatstartedempty
#使用工廠方法建立列表,在建立的時候,只能有乙個引數
>>> list|("foo")
traceback (most recent call last):
file "", line 1, in
typeerror: unsupported operand type(s) for |: 'type' and 'str'
>>> list("foo")
['f', 'o', 'o']
>>> list("kel","abc")
traceback (most recent call last):
file "", line 1, in
typeerror: list() takes at most 1 argument (2 given)
訪問列表的值的時候,使用下標來進行訪問或者使用切片的方法來訪問,如下:
>>> alist
[123, 'abc', 4.5599999999999996, ['inner', 'list'], (7-9j)]
>>> alist[0]
>>> alist[:3]
[123, 'abc', 4.5599999999999996]
>>> alist[3][0]
'inner'
>>> alist
[123, 'abc', 4.5599999999999996, ['inner', 'list'], (7-9j)]
>>> alist[3] = "new"
>>> alist
[123, 'abc', 4.5599999999999996, 'new', (7-9j)]
>>> alist
[123, 'abc', 4.5599999999999996, 'new', (7-9j), 'lase']
>>> alist.insert(1,"index 1 value")
>>> alist
[123, 'index 1 value', 'abc', 4.5599999999999996, 'new', (7-9j), 'lase']
刪除的時候可以是del或者使用remove()方法,remove是移除第乙個碰到的相應的值,如下所示:
>>> alist
['index 1 value', 'abc', 4.5599999999999996, 'new', (7-9j), 'lase']
>>> del alist[0]
>>> alist
['abc', 4.5599999999999996, 'new', (7-9j), 'lase']
>>> del alist[:2]
>>> alist
['new', (7-9j), 'lase']
當刪除整個列表的時候,可以是del,並且會刪除其他引用:
>>> alist
['new', (7-9j), 'lase']
>>> del alist
>>> alist
traceback (most recent call last):
file "", line 1, in
nameerror: name 'alist' is not defined
也可以使用pop來進行刪除,在使用pop的時候會返回乙個特定的物件,如下所示:
>>> alist
['abc', 'kel']
>>> alist.pop()
'kel'
>>> alist.pop(0)
'abc'
>>> alist
列表解析主要是使用列表和for迴圈的方式,如下所示:
>>> [i*2 for i in [1,2,3] if i%2 == 1]
[2, 6]
>>> [i*2 for i in range(9) if i%2 == 0]
[0, 4, 8, 12, 16]
那些可以改變物件值的可變物件值的可變物件的方法是沒有返回值的。
在使用可變物件的方法如sort(),extend()和reverse()的時候要注意,這些操作會在列表中原地執行操作,也就是說現有的列表內容會被改變,但是是沒有返回值的。
reversed(list)--對list進行反轉操作
sorted(list)--對list進行排序操作
zip(seq1,seq2)--[(seq1[0],seq2[0]),(seq1[1],seq2[1])]
list(),tuple()列表和元祖進行相互轉化
python的列表和元組 Python 列表和元組
lst1 中國 美國 日本 加拿大 lst2 中國 美國 日本 加拿大 lst1 1 2 美國 歐盟 print lst1 lst1 1 歐盟 print lst1 lst1 1 美國 歐盟 針對某一位列表元素,但賦值兩個字串,將以元組格式插入 print type lst1 1 print lst...
Python列表和元組
序列可修改,而元組不能。eda edward 42 序列可包含其它列表 edward edward 43 john john 44 database edward,john database edward 43 john 44 序列的分片 nubs range 10 nubs 0,1,2,3,4,5...
python 列表和元組
資料結構 資料結構是以某種方式組合起來的資料元素。在python中最基本的資料結構為序列,序列中的每個元素都有編號,就像學號,可以通過學號找到你本人。不同的序列中的編號一般都是從0開始。序列包括元組和列表,另外還有字典。列表和元組的區別 列表是可以修改的,而元組不可以。在處理資料要特別注意這一點,但...