Python基礎(chǔ)(13)-列表數(shù)據(jù)類型及其所具備的方法

13.1-創(chuàng)建列表:

第一種方式:

>>> l1 = ["ab","cd","ef"]
>>> type(l1)
<class 'list'>

第二種方式:

>>> l1 = list(["ab","cd","ef"])
>>> type(l1)
<class 'list'>

13.2-索引及切片:

說(shuō)明:和字符串中的用法相同凛捏,但切片返回的是一個(gè)列表。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
l1 = list(["ab","cd","ef"])

# 索引
print("索引:",l1[0])

# 切片
print("切片:",l1[:2])

print("切片:",l1[1:len(l1)])

運(yùn)行結(jié)果:

13.3-列表(list)內(nèi)部方法介紹:

append(self, p_object):

說(shuō)明:將一個(gè)元素追加到列表末尾际度, p_object 表示要追加到列表末尾的元素葵袭。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
l1 = list(["ab","cd","ef"])

# 將 "gh" 追加到列表末尾,將修改原來(lái)的列表
l1.append("gh")
print(l1)

運(yùn)行結(jié)果:

clear(self):

說(shuō)明:刪除所有元素乖菱,即清空列表坡锡。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
l1 = list(["ab","cd","ef"])
print(l1)

# 清空列表
l1.clear()
print(l1)

運(yùn)行結(jié)果:

copy(self):

說(shuō)明:淺拷貝。

count(self, value):

說(shuō)明:統(tǒng)計(jì)某個(gè)元素在列表里出現(xiàn)的次數(shù)窒所, value 表示即將統(tǒng)計(jì)的元素鹉勒。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
l1 = list(["ab","cd","ef","cd"])

# 統(tǒng)計(jì) "cd" 在列表里出現(xiàn)的次數(shù)
l2 = l1.count("cd")
print(l2)

運(yùn)行結(jié)果:

extend(self, iterable):

說(shuō)明:擴(kuò)展,在列表末尾一次性追加一個(gè)可迭代的對(duì)象吵取。 iterable 接受一個(gè)可迭代的對(duì)象禽额。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
l1 = list(["ab","cd","ef"])
l2 = ["gh","ij"]

# 將 "l2" 這個(gè)列表中的所有元素 追加到 "l1" 這個(gè)列表末尾
l1.extend(l2)
print(l1)

運(yùn)行結(jié)果:

index(self, value, start=None, stop=None):

說(shuō)明:在列表中查找指定元素的位置,如果存在返回指定元素的索引值,否則報(bào)錯(cuò)脯倒, value 表示指定的元素实辑,start 表示開始的位置, end 表示結(jié)束的位置藻丢。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
l1 = list(["ab","cd","ef"])

# 查找 "cd" 在列表中的位置
l2 = l1.index("cd")
print("cd:",l2)

# 指定范圍剪撬,查找 "ed" 在列表中的位置
l3 = l1.index("ef",1,3)
print("ef:",l3)

# 查找 "gh" 在列表中的位置,沒有找到報(bào)錯(cuò)
l4 = l1.index("gh")
print(l4)

運(yùn)行結(jié)果:

insert(self, index, p_object):

說(shuō)明:將一個(gè)元素插入列表中指定的索引位置悠反, index 表示元素要插入的指定索引位置残黑, p_object 表示要插入列表中指定的元素。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
l1 = list(["ab","cd","ef"])
print("插入前:",l1)

# 將 "gh" 這個(gè)元素插入到列表索引位置 "1" 上
l1.insert(1,"gh")
print("插入后:",l1)

運(yùn)行結(jié)果:

pop(self, index=None):

說(shuō)明:移除列表中指定索引位置上的元素斋否,并返回該元素的值梨水, index 表示要移除元素的索引位置,默認(rèn)為最后一個(gè)元素茵臭。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
l1 = list(["ab","cd","ef","gh"])
print("移除前:",l1)

# 默認(rèn)移除最后一個(gè)元素
l1.pop()
print("移除最后一個(gè)元素:",l1)

# 移除指定元素疫诽,并將移除的元素賦值給 "s1"
s1 = l1.pop(1)
print("移除指定元素:",l1)
print("移除的元素:",s1)

運(yùn)行結(jié)果:

remove(self, value):

說(shuō)明:如果列表中有多個(gè)相同的元素,將移除第一個(gè)匹配項(xiàng)笼恰, value 表示要移除的元素踊沸。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
l1 = list(["ab","cd","ef","cd"])

# 移除列表中 "cd" 這個(gè)元素的第一個(gè)匹配項(xiàng)
l1.remove("cd")
print(l1)

# 如果該元素不存在,將會(huì)報(bào)錯(cuò)
l1.remove("abc")

運(yùn)行結(jié)果:

reverse(self):

說(shuō)明:反轉(zhuǎn)社证,反向輸出列表中的元素逼龟。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
l1 = list(["ab","cd","ef"])
print("反向輸出前:",l1)

l1.reverse()
print("反向輸出后:",l1)

運(yùn)行結(jié)果:

sort(self, key=None, reverse=False):

說(shuō)明:對(duì)列表進(jìn)行排序。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
l1 = list(["cd","ef","ab"])
print(l1)

#對(duì)列表進(jìn)行排序
l1.sort()
print(l1)

運(yùn)行結(jié)果:

13.4-del關(guān)鍵字:

指定刪除列表中一個(gè)或多個(gè)連續(xù)的元素追葡。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
l1 = list(["ab","cd","ef","gh","ij"])
print(l1)

# 刪除列表中索引位置為 "3" 的元素
del l1[3]
print(l1)

# 指定范圍腺律,刪除列表中的元素
del l1[1:3]
print(l1)

運(yùn)行結(jié)果:

13.5-將其他數(shù)據(jù)類型轉(zhuǎn)換成列表:

def __init__(self, seq=()): # known special case of list.__init__
        """
        list() -> new empty list
        list(iterable) -> new list initialized from iterable's items
        # (copied from class doc)
        """
        pass

說(shuō)明: list 接受的參數(shù)為可迭代的對(duì)象時(shí),會(huì)將其轉(zhuǎn)換成列表宜肉。

將字符串轉(zhuǎn)換成列表:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
s1 = "abcdef"

# 將字符串轉(zhuǎn)換成列表
l1 = list(s1)
print(l1)
print(type(l1))

運(yùn)行結(jié)果:

注:在將字符串轉(zhuǎn)換成列表時(shí)匀钧,會(huì)在內(nèi)部執(zhí)行for循環(huán),循環(huán)字符串將循環(huán)的每一個(gè)元素當(dāng)做列表的元素谬返。

將元組轉(zhuǎn)換成列表:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
t1 = ("ab","cd","ef")

# 將元組轉(zhuǎn)換成列表
l1 = list(t1)
print(l1)

運(yùn)行結(jié)果:

將字典轉(zhuǎn)換成列表:

將字典的鍵轉(zhuǎn)換成列表:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
dic = {
    "k1" : "ab",
    "k2" : "cd",
    "k3" : "ef"
}

# 將字典的鍵轉(zhuǎn)換成列表
l1 = list(dic)
print(l1)

運(yùn)行結(jié)果:

注:由于字典循環(huán)時(shí)默認(rèn)循環(huán)的就是 key 之斯,所以才會(huì)將 key 當(dāng)做列表中的元素。

將字典的值轉(zhuǎn)換成列表:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
dic = {
    "d1" : "ab",
    "d2" : "cd",
    "d3" : "ef"
}

# 將字典的值轉(zhuǎn)換成列表
l1 = list(dic.values())
print(l1)

運(yùn)行結(jié)果:

注:可以將循環(huán) key 改成循環(huán)的是 value 遣铝,這樣就會(huì)將 value 當(dāng)做列表的元素佑刷。

將字典的鍵值對(duì)轉(zhuǎn)換成列表:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
dic = {
    "d1" : "ab",
    "d2" : "cd",
    "d3" : "ef"
}

# 將字典的鍵值對(duì)轉(zhuǎn)換成列表
l1 = list(dic.items())
print(l1)

運(yùn)行結(jié)果:

注:將字典的 鍵值對(duì) 當(dāng)做列表的元素。

13.6-多層嵌套:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
l1 = ["ab","cd",{"k1":"ef","k2":{"k3":123,"k4":456}}]

# 取 "123"
print(l1[2]["k2"]["k3"])

運(yùn)行結(jié)果:

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末酿炸,一起剝皮案震驚了整個(gè)濱河市瘫絮,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌填硕,老刑警劉巖麦萤,帶你破解...
    沈念sama閱讀 217,657評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡壮莹,警方通過(guò)查閱死者的電腦和手機(jī)翅帜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)垛孔,“玉大人藕甩,你說(shuō)我怎么就攤上這事≈芗觯” “怎么了?”我有些...
    開封第一講書人閱讀 164,057評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵僵娃,是天一觀的道長(zhǎng)概作。 經(jīng)常有香客問(wèn)我,道長(zhǎng)默怨,這世上最難降的妖魔是什么讯榕? 我笑而不...
    開封第一講書人閱讀 58,509評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮匙睹,結(jié)果婚禮上愚屁,老公的妹妹穿的比我還像新娘。我一直安慰自己痕檬,他們只是感情好霎槐,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,562評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著梦谜,像睡著了一般丘跌。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上唁桩,一...
    開封第一講書人閱讀 51,443評(píng)論 1 302
  • 那天闭树,我揣著相機(jī)與錄音,去河邊找鬼荒澡。 笑死报辱,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的单山。 我是一名探鬼主播碍现,決...
    沈念sama閱讀 40,251評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼饥侵!你這毒婦竟也來(lái)了鸵赫?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,129評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤躏升,失蹤者是張志新(化名)和其女友劉穎辩棒,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,561評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡一睁,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,779評(píng)論 3 335
  • 正文 我和宋清朗相戀三年钻弄,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片者吁。...
    茶點(diǎn)故事閱讀 39,902評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡窘俺,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出复凳,到底是詐尸還是另有隱情瘤泪,我是刑警寧澤,帶...
    沈念sama閱讀 35,621評(píng)論 5 345
  • 正文 年R本政府宣布育八,位于F島的核電站对途,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏髓棋。R本人自食惡果不足惜实檀,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,220評(píng)論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望按声。 院中可真熱鬧膳犹,春花似錦、人聲如沸签则。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)怀愧。三九已至侨颈,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間芯义,已是汗流浹背哈垢。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留扛拨,地道東北人耘分。 一個(gè)月前我還...
    沈念sama閱讀 48,025評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像绑警,于是被迫代替她去往敵國(guó)和親求泰。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,843評(píng)論 2 354

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