在Python中列表類(lèi)似于數(shù)組
對(duì)列表同樣可以使用字符串的切片,規(guī)則一致
ls = [1,'1a','huruji']
ls[1:]
# ['1a', 'huruji']
有兩種方法使得列表反轉(zhuǎn)溶浴,一種和字符串一致,另一種使用reversed()方法,這個(gè)方法返回一個(gè)可迭代的對(duì)象
ls[::-1]
# ['huruji', '1a',1]
list(reversed(ls))
# ['huruji', '1a',1]
list(reversed('abcd'))
# ['d','c','b','a']
reversed是一個(gè)內(nèi)建函數(shù)折晦,list中有一個(gè)reverse()方法同樣是用來(lái)反轉(zhuǎn)列表的
list.reverse()
list
# ['huruji', '1a',1]
使用len()方法返回列表的長(zhǎng)度
len(ls)
# 3
使用+操作符連接兩個(gè)列表
b = ['xie']
ls + b
# [1,'1a','huruji','xie']
使用*操作符重復(fù)列表
ls*2
# [1,'1a','huruji',1,'1a','huruji']
使用in操作符來(lái)判斷一個(gè)元素是否在列表中
'1a' in ls
# True
使用min()、max()方法沾瓦,當(dāng)列表中全為數(shù)字時(shí)满着,返回相應(yīng)數(shù)學(xué)上的最小、最大值贯莺,否則风喇,返回ASCII值的最小,最大值對(duì)應(yīng)的元素
max(ls)
# huruji
min(ls)
# 1
c = [1,2,3,43,23]
min(c)
# 1
max(c)
# 43
d = ['a','A',12,'13']
min(d)
# 12
max(d)
# a
cmp()方法比較方式同上缕探,一個(gè)一個(gè)元素比較魂莫,相同則比較下一個(gè),不同則返回爹耗,返回結(jié)果同字符串中的cmp()方法
d = ['a','A',12,'13']
e = ['b']
cmp(d,e)
# -1
向列表中追加元素耙考,使用append()方法或者使用a[len(a):]=[x],不同之處在于前者只能一次添加一個(gè)元素潭兽,后者可以添加多個(gè)元素
num = [1,2,3,4]
num.append(5)
num
# [1,2,3,4,5]
num[len(num):] = [6,7,8]
num
# [1,2,3,4,5,6,7,8]
當(dāng)然使用extend()方法就實(shí)現(xiàn)了上面中的第二種方法
num = [1,2,3,4]
num2 = [5,6,7]
num.extend(num2)
num
# [1,2,3,4,5,6,7]
使用count()方法獲取某個(gè)元素在列表中出現(xiàn)過(guò)的次數(shù)
num = [1,1,2,3,3,3,5]
num.count(1)
# 2
num.count('a')
# 0
num.count(5)
# 1
使用index()方法獲取某個(gè)元素在列表中首次出現(xiàn)的位置的索引
num.index(1)
# 0
num.index(3)
# 3
使用insert()方法向列表中插入元素倦始,這個(gè)方法有兩個(gè)參數(shù),第一個(gè)是要插入的位置的前一個(gè)的索引值山卦,所以插入之后鞋邑,新元素的索引也就是這個(gè)值,當(dāng)這個(gè)值大于列表的最大索引值的時(shí)候账蓉,就是與append()一樣的追加操作了炫狱,第二個(gè)參數(shù)是要插入的元素
num = [1,2,3,4]
num.insert(2,5)
num
# [1,2,5,3,4]
使用pop()方法彈出一個(gè)元素,當(dāng)無(wú)參數(shù)時(shí)剔猿,彈出最后一個(gè)元素视译,當(dāng)有參數(shù)時(shí),參數(shù)為索引值归敬,則彈出相應(yīng)的索引值對(duì)應(yīng)的參數(shù)
num.pop()
# 4
使用remove()方法刪除一個(gè)元素酷含,如果這個(gè)元素不在列表中則報(bào)錯(cuò)鄙早,如果列表中有多個(gè)這個(gè)元素,則刪除第一個(gè)
num = [1,2,3,4]
num.remove(2)
num
# [1,3,4]
num.extend([2,2,2])
num.remove(2)
num
# [1,3,4,2,2]
先判斷一個(gè)元素是否在列表中椅亚,再刪除
if 2 in num:
num.remove(2)
else:
print '2 is not in num'
使用sort()方法對(duì)列表重新排序
a = [6,5,7,1,2,3,4]
a.sort()
a
# [1,2,3,4,5,6,7]