溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python列表的索引取值問(wèn)題怎么解決

發(fā)布時(shí)間:2022-09-14 09:17:43 來(lái)源:億速云 閱讀:128 作者:iii 欄目:編程語(yǔ)言

這篇文章主要介紹了Python列表的索引取值問(wèn)題怎么解決的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡(jiǎn)單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇Python列表的索引取值問(wèn)題怎么解決文章都會(huì)有所收獲,下面我們一起來(lái)看看吧。

列表的索引取值

1. 列表的索引

和字符串一樣,列表中的每一個(gè)元素也都有一個(gè)屬于自己的編號(hào),這個(gè)編號(hào)就是列表的索引。

2. 列表索引取值

通過(guò)字符串索引,我們可以取出字符串中的元素。

通過(guò)列表索引,我們可以取出列表的元素。

【語(yǔ)法】

  • 列表名或者列表本身。

  • 英文中括號(hào)。

  • 索引。

3. 列表的正索引取值

# 新建一個(gè)str列表
str_list = ["當(dāng)歸", "人參",  "黃芪"]

print(str_list[0])
print(str_list[1])
print(str_list[2])

【終端輸出】

當(dāng)歸
人參
黃芪

正索引從左往右開(kāi)始編號(hào),編號(hào)從0開(kāi)始!

str_list[0]取到列表的第1元素當(dāng)歸。
str_list[1]取到列表的第2元素人參
str_list[2]取到列表的第3元素黃芪。

4. 列表的負(fù)索引取值

# 新建一個(gè)str列表
str_list = ["當(dāng)歸", "人參",  "黃芪"]

print(str_list[-1])
print(str_list[-2])
print(str_list[-3])

【終端輸出】

黃芪
人參
當(dāng)歸

負(fù)索引從右往左開(kāi)始編號(hào),編號(hào)從-1開(kāi)始!

str_list[-1]取到列表的倒數(shù)第1元素黃芪。
str_list[-2]取到列表的倒數(shù)第2元素人參
str_list[-3]取到列表的倒數(shù)第3元素當(dāng)歸。

負(fù)索引取值通常使用在不知道列表有幾個(gè)元素,或列表元素太多,你需要取倒數(shù)第n個(gè)元素的情況。

【溫馨提示】

重點(diǎn)注意區(qū)分正索引從0開(kāi)始編號(hào),而負(fù)索引從-1開(kāi)始編號(hào)。

5. 用列表本身取值

print(["當(dāng)歸", "人參",  "黃芪"][2])

【終端輸出】

黃芪

上述代碼是直接從一個(gè)列表中取出列表的第3個(gè)元素。

這樣的方法很少用,了解即可。

6. 從嵌套列表中取值

【語(yǔ)法】

列表[索引][索引]

當(dāng)需要從列表中的列表取值,即需要2次索引取值的時(shí)候,語(yǔ)法為列表[索引][索引]。

嵌套列表就是指列表中還有列表,即列表的某個(gè)元素或某幾個(gè)元素的數(shù)據(jù)類型為列表。

  1. 列表[索引]從列表中取出含有身份證號(hào)碼的元素:

# 新建一個(gè)stu列表
stu_list = ["白敬亭",   ["聯(lián)系方式", 19987658765] , ["身份證號(hào)",  533001199101023456]]

# 用正索引取出列表的第3個(gè)元素
print(stu_list[2])

# 用負(fù)索引取出列表的倒數(shù)第1個(gè)元素
print(stu_list[-1])

# 查看取到的元素的數(shù)據(jù)類型
print("取到的元素?cái)?shù)據(jù)類型為",type(stu_list[2]))
print("取到的元素?cái)?shù)據(jù)類型為",type(stu_list[-1]))

【終端輸出】

['身份證號(hào)', 533001199101023456]
['身份證號(hào)', 533001199101023456]
取到的元素?cái)?shù)據(jù)類型為 <class 'list'>
取到的元素?cái)?shù)據(jù)類型為 <class 'list'>

觀察上述結(jié)果,取到的元素的數(shù)據(jù)類型為列表list。

但這不是我想要的最終結(jié)果,我還想繼續(xù)取出他的身份證號(hào)碼,該如何操作呢?

2.列表[索引][索引]取出列表中的列表元素:

# 新建一個(gè)stu列表
stu_list = ["白敬亭",   ["聯(lián)系方式", 19987658765] , ["身份證號(hào)",  533001199101023456]]

# 用正索引取出列表的第3個(gè)元素,然后取出第3個(gè)元素中的第2個(gè)元素
print(stu_list[2][1])

# 用負(fù)索引取出列表的倒數(shù)第1個(gè)元素,然后取出倒數(shù)第1個(gè)元素中的倒數(shù)第1個(gè)元素
print(stu_list[-1][-1])

# 查看取到的元素的數(shù)據(jù)類型
print("取到的元素?cái)?shù)據(jù)類型為",type(stu_list[2][1]))
print("取到的元素?cái)?shù)據(jù)類型為",type(stu_list[-1][-1]))

【終端輸出】

533001199101023456
533001199101023456
取到的元素?cái)?shù)據(jù)類型為 <class 'int'>
取到的元素?cái)?shù)據(jù)類型為 <class 'int'>

stu_list[2]取到了列表stu_list中的第3個(gè)元素,即['身份證號(hào)', 533001199101023456]。

stu_list[2][1]中的[2]先取到['身份證號(hào)', 533001199101023456]。

后面的[1]取到了['身份證號(hào)', 533001199101023456]中的第2個(gè)元素,即533001199101023456。

取到的數(shù)據(jù)類型為整數(shù)。

7. 課后練習(xí)

1.我的書(shū)包中有雨傘、手機(jī)、錢(qián)包;錢(qián)包中有銀行卡、公交卡、飯卡。

【題目要求】

  • 用一個(gè)列表存儲(chǔ)書(shū)包中的物品。

  • 用一個(gè)列表存儲(chǔ)錢(qián)包中的物品。

  • 編寫(xiě)代碼從書(shū)包列表中取出公交卡。

【參考答案】

# 新建一個(gè)錢(qián)包列表
qianbao = ["銀行卡", "公交卡", "飯卡"]

# 新建一個(gè)書(shū)包列表
shubao = ["雨傘", "手機(jī)", qianbao]

# 從書(shū)包中取出第3個(gè)元素qianbao,然后取出qianbao中的第2個(gè)元素公交卡
print(shubao[2][1])

【終端輸出】

公交卡

為了方便大家理解,上述列表名和列表中的元素我都用了中文。

2.取出下面列表中聯(lián)系方式中的19987658765

# 新建一個(gè)stu列表
stu_list = ["白敬亭",   ["聯(lián)系方式", [19987658765, 'xyz77520520']] , ["身份證號(hào)",  533001199101023456]]

【參考答案】

# 新建一個(gè)stu列表
stu_list = ["白敬亭",   ["聯(lián)系方式", [19987658765, 'xyz77520520']] , ["身份證號(hào)",  533001199101023456]]

# 正索引取值
print(stu_list[1][1][1])

# 負(fù)索引取值
print(stu_list[-2][-1][-1])

# 查看取到的元素的數(shù)據(jù)類型
print("取到的元素?cái)?shù)據(jù)類型為",type(stu_list[1][1][1]))
print("取到的元素?cái)?shù)據(jù)類型為",type(stu_list[-2][-1][-1]))

【終端輸出】

xyz77520520
xyz77520520
取到的元素?cái)?shù)據(jù)類型為 <class 'str'>
取到的元素?cái)?shù)據(jù)類型為 <class 'str'>

關(guān)于“Python列表的索引取值問(wèn)題怎么解決”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“Python列表的索引取值問(wèn)題怎么解決”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI