>>>edward = ['edward gumby',42]
序列也可以包含其他的序列,例如:
>>>edward = ['edward gumby' , 42]
>>>john = ['john smith' , 50]
>>>database = [edward,john]
>>>database
[['edward gumby', 42],['john smith' , 50]]
>>>fourth = raw_input('year: ')[3]
year: 2005
>>>fourth
'5'
>>>tag = 'python web site'
>>>tag[9:30]
''>>>tag[32:-4]
'python web site'
-訪問最後三個元素的技巧:
>>>numbers = [1,2,3,4,5,6,7,8,9,10]
>>>numbers[7:10]
[8,9,10]
>>>numbers[-3:-1]
[8,,9] #從結尾開始計數,不行
>>>numbers[-3,0]
#返回空列表
>>>numbers[-3:]
[8,9,10]
>>>numbers[:3]
[1,2,3]
>>>numbers[:]
[1,2,3,4,5,6,7,8,9,10] #返回整個列表
>>>numbers[0:10:1]
[1,2,3,4,5,6,7,8,9,10]
>>>numbers[0:10:2]
[1,3,5,7,9]
>>>numbers[::4]
[1,5,9]
>>>[1,2,3]+[4,5,6]
[1,2,3,4,5,6]
>>>'hello ' + 'world'
'hello world'
>>>'python' * 5
'pythonpythonpythonpythonpython'
>>>[42] * 10
[42,42,42,42,42,42,42,42,42,42]
>>>sequence = [none] * 10
>>>sequence
[none,none,none,none,none,none,none,none,none,none]
>>>permissions = 'rw'
>>>'w'
in permissions
true
>>>subject = '$$$ get rich now!!! $$$'
>>>'$$$'
in subject
true
改變列表:元素賦值。不能為乙個位置不存在的元素賦值。
>>>x = [1,1,1]
>>>x[1] = 2
>>>x
[1,2,1]
刪除元素
>>>names = ['alice' , 'beth' , 'cecil' , 'dee-dee' , 'earl']
>>>del names[2]
>>>names
['alice' , 'beth' , 'dee-dee' , 'earl']
3.分片賦值
>>>name = list('perl')
>>>name
['p','e','r','l']
>>>name[2:] = list('ar')
>>>name
['p','e','a','r']
分片賦值可以不需要替換任何原有元素的情況下插入新的元素。
>>>numbers = [1,5]
>>>numbers[1:1] = [2,3,4]
>>>numbers
[1,2,3,4,5]
也可以用來刪除元素
>>>numbers
[1,2,3,4,5]
>>>numbers[1:4] =
>>>numbers
[1,5]
>>>lst = [1,2,3]
>>>lst
[1,2,3,4]
>>>x = [[1,2],1,1,[2,1,[1,2]]]
>>>x.count(1)
2>>>x.count([1,2])
1
extend:在末尾一次性追加另乙個序列中的多個值(用新列表擴充套件原來的列表)
>>>a = [1,2,3]
>>>b = [4,5,6]
>>>a.extend(b)
>>>a
[1,2,3,4,5,6]
這個與連線操作不同,連線操作+返回乙個新列表,而extend是在原列表上面修改。
4. index:從列表找出某個值第乙個匹配項的索引位置
>>>knights = ['we','are','knights','who','say','ni']
>>>knights.index['who']
4
insert:將物件插入到列表中
>>>numbers = [1,2,3,5,6,7]
>>>numbers.insert(3,'four')
>>>numbers
[1,2,3,'four',5,6,7]
pop:移除最後乙個元素,並返回該元素的值
>>>x = [1,2,3]
>>>x.pop()
3>>>x
[1,2]
>>>x.pop(0)
1>>>x
[2]
7.remove: 用於移除列表中某個值的第乙個匹配項
>>>x = ['to','be','or','not','to','be']
>>>x.remove('be')
>>>x
['to','or','not','to','be']
reverse:將列表中元素反向存放
>>>x = [1,2,3]
>>>x.reverse()
>>>x
[3,2,1]
sort:在原位置對列表進行排序(即改變原來的列表),但是返回空值
>>>x = [4,6,2,1,7,9]
>>>x.sort()
>>>x
[1,2,4,6,7,9]
如果需要乙個排好序的列表副本,不可以這樣:
>>>x = [4,6,2,1,7,9]
>>>y = x.sort()
>>>print y
none
可以將x的副本賦值給y,再對y排序
>>>x = [4,6,2,1,7,9]
>>>y = x[:] # 不能用y = x,否則y和x都指向同乙個列表了
>>>y.sort()
>>>x
[4,6,2,1,7,9]
>>>y
[1,2,4,6,7,9]
高階排序
首先自定義比較函式compare(x,y),然後提供給sort函式作為引數。sort函式還有另外兩個可選引數,key和reverse。引數key需要提供乙個在排序中使用的函式,為每個元素建立乙個鍵,然後所有元素根據鍵來排序。另乙個引數reverse是簡單的布林值,指明是否要進行反向排序。
>>>1,2,3
(1,2,3)
>>>(1,2,3)
(1,2,3)
>>>42
42>>>42,
(42,)
>>>(42,)
(42,)
>>>3*(40+2)
126>>>3*(40+2.)
>>>(42,42,42)
>>>tuple([1,2,3])
(1,2,3)
>>>tuple('abc')
('a','b','c')
>>>tuple((1,2,3))
>>>(1,2,3)
>>>x = 1,2,3
>>>x[1]
2>>>x[0:2]
(1,2)
2,列表和元組
資料結構,以某種方式組合起來的資料元素的集合。python最基本的資料結構為序列,序列中每個元素都有編號,即其位置或索引。python中常用的三種序列 列表 元組 字串。注 列表可以修改,元組 字串不可修改,列表 元組中的元素是多樣的。注 列表以 標識 元組以 標識 字串以雙引號標識。通用序列操作 ...
python學習2 列表和元組
二列表和元組 2.1 序列 python中最基本的資料結構是序列。python有6種內建序列 列表 元組 字串 unicode字串 buffer物件和xrange物件。列表和元組的主要區別 列表可以修改,元組不可以修改 通用的序列操作 索引 分片 加 乘 檢查某個元素是否屬於序列的成員 計算序列長度...
04 列表和元組
今日主要內容 1.什麼是列表 定義 能裝物件的物件 在python中使用來描述列表,內部元素用逗號隔開.對資料型別沒有要求 列表存在索引和切片.和字串是一樣的.2.相關的增刪改查操作 重點 新增 2.insert 位置,元素 插入指定元素到指定位置 刪除 1.pop index 根據索引刪除 2.r...