python-List(列表操作)

列表反轉(zhuǎn)

>>> blist=[1,2,3,4,5,6,7,8,9,10]

>>> blist[::-1] ?使用:: 符號(hào) ? 從右邊第一個(gè)元素開(kāi)始逆序

[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

>>> blist[::-2] ?從右邊第二個(gè)元素開(kāi)始 間隔一個(gè)逆序

[10, 8, 6, 4, 2]

同理 blist[::3] 會(huì)得到[10, 7, 4, 1] 如果::后面跟的是正數(shù)

>>> blist[::1]

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

blist[::2]

[1, 3, 5, 7, 9]

還有一種方式 使用reversed

>>> list(reversed(blist))

[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

還有其他對(duì)list的操作:len() 、+、*、in、max()min() cmp()這跟對(duì)字符串的操作類(lèi)似

比較重要的是列表的函數(shù)append()和extend()


append()函數(shù):

list.append(x) 等價(jià)于 a[len(a):] = [x] 其中l(wèi)en(a) 是列表a 的長(zhǎng)度

>>> alist

['a', 'b', 'c']

>>> alist[len(alist):]=['d']

>>> alist

['a', 'b', 'c', 'd']

>>> alist.append('e')

>>> alist

['a', 'b', 'c', 'd', 'e']

extend 將一個(gè)列表追加到另外一個(gè)列表之后

>>> clist=['I','me','mine']

>>> clist.extend(blist) ?# 把 blist 追加到 clist 之后

>>> clist

['I', 'me', 'mine', 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

注意被追加的內(nèi)容一定要是list類(lèi)型

>>> la=[1,2,3]

>>> b="abc"

>>> la.extend(b)

>>> la

[1, 2, 3, 'a', 'b', 'c']

>>> c=5>>> la.extend(c) ?# c 是一個(gè)數(shù)值類(lèi)型

Traceback (most recent call last):? File "", line 1, inla.extend(c)

TypeError: 'int' object is not iterable

list.extend(L) 等價(jià)于list[len(list):] = L ?L是帶并入的list

extend 是將另外一個(gè)元素增加到自己的列表中,但是這個(gè)元素必須是iterable 可迭代的

某些類(lèi)型的對(duì)象是可迭代的 ,list 類(lèi)型是可迭代的 ?字符串類(lèi)型是不可迭代的

比如 增加的元素是字符串類(lèi)型 “python”

la.extend("python") ?的時(shí)候會(huì)將"python" 字符串轉(zhuǎn)化為 ['p','y','t','h','o','n']


append 和extend都是原地修改列表,所以沒(méi)有返回值,沒(méi)有返回值就不能賦值給某個(gè)變量

>>> one=["good","good","study"]

>>> one.extend(['day','day','up'])

>>> one

['good', 'good', 'study', 'day', 'day', 'up']

>>> two = one

>>> two

['good', 'good', 'study', 'day', 'day', 'up']

>>> three = one.extend(['day','day','up']) ?# 不能賦值 所以three變量什么值都沒(méi)有



>>> lst=[1,2,3]

>>> lst.append(["java",'pyhton'])

>>> lst

[1, 2, 3, ['java', 'pyhton']]

>>> lst=[1,2,3]

>>> lst.extend(['java', 'pyhton'])

>>> lst

[1, 2, 3, 'java', 'pyhton']

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容