關(guān)于Python 列表的索引取值問題
列表的索引取值
1. 列表的索引
和字符串一樣,列表中的每一個元素也都有一個屬于自己的編號,這個編號就是列表的索引。
2. 列表索引取值
通過字符串索引,我們可以取出字符串中的元素。
通過列表索引,我們可以取出列表的元素。
【語法】
- 列表名或者列表本身。
- 英文中括號。
- 索引。
3. 列表的正索引取值
# 新建一個str列表 str_list = ["當歸", "人參", "黃芪"] print(str_list[0]) print(str_list[1]) print(str_list[2])
【終端輸出】
當歸
人參
黃芪
??正索引從左往右開始編號,編號從0
開始!
str_list[0]
取到列表的第1元素當歸
。str_list[1]
取到列表的第2元素人參
。str_list[2]
取到列表的第3元素黃芪
。
4. 列表的負索引取值
# 新建一個str列表 str_list = ["當歸", "人參", "黃芪"] print(str_list[-1]) print(str_list[-2]) print(str_list[-3])
【終端輸出】
黃芪
人參
當歸
??負索引從右往左開始編號,編號從-1
開始!
str_list[-1]
取到列表的倒數(shù)第1元素黃芪
。str_list[-2]
取到列表的倒數(shù)第2元素人參
。str_list[-3]
取到列表的倒數(shù)第3元素當歸
。
負索引取值通常使用在不知道列表有幾個元素,或列表元素太多,你需要取倒數(shù)第n個元素的情況。
【溫馨提示】
重點注意區(qū)分正索引從0
開始編號,而負索引從-1
開始編號。
5. 用列表本身取值
print(["當歸", "人參", "黃芪"][2])
【終端輸出】
黃芪
上述代碼是直接從一個列表中取出列表的第3個元素。
這樣的方法很少用,了解即可。
6. 從嵌套列表中取值
【語法】
列表[索引][索引]
當需要從列表中的列表取值,即需要2次索引取值的時候,語法為列表[索引][索引]
。
嵌套列表就是指列表中還有列表,即列表的某個元素或某幾個元素的數(shù)據(jù)類型為列表。
列表[索引]
從列表中取出含有身份證號碼的元素:
# 新建一個stu列表 stu_list = ["白敬亭", ["聯(lián)系方式", 19987658765] , ["身份證號", 533001199101023456]] # 用正索引取出列表的第3個元素 print(stu_list[2]) # 用負索引取出列表的倒數(shù)第1個元素 print(stu_list[-1]) # 查看取到的元素的數(shù)據(jù)類型 print("取到的元素數(shù)據(jù)類型為",type(stu_list[2])) print("取到的元素數(shù)據(jù)類型為",type(stu_list[-1]))
【終端輸出】
['身份證號', 533001199101023456]
['身份證號', 533001199101023456]
取到的元素數(shù)據(jù)類型為 <class 'list'>
取到的元素數(shù)據(jù)類型為 <class 'list'>
觀察上述結(jié)果,取到的元素的數(shù)據(jù)類型為列表list
。
但這不是我想要的最終結(jié)果,我還想繼續(xù)取出他的身份證號碼,該如何操作呢?
2.列表[索引][索引]
取出列表中的列表元素:
# 新建一個stu列表 stu_list = ["白敬亭", ["聯(lián)系方式", 19987658765] , ["身份證號", 533001199101023456]] # 用正索引取出列表的第3個元素,然后取出第3個元素中的第2個元素 print(stu_list[2][1]) # 用負索引取出列表的倒數(shù)第1個元素,然后取出倒數(shù)第1個元素中的倒數(shù)第1個元素 print(stu_list[-1][-1]) # 查看取到的元素的數(shù)據(jù)類型 print("取到的元素數(shù)據(jù)類型為",type(stu_list[2][1])) print("取到的元素數(shù)據(jù)類型為",type(stu_list[-1][-1]))
【終端輸出】
533001199101023456
533001199101023456
取到的元素數(shù)據(jù)類型為 <class 'int'>
取到的元素數(shù)據(jù)類型為 <class 'int'>
stu_list[2]
取到了列表stu_list中的第3個元素,即['身份證號', 533001199101023456]
。
stu_list[2][1]
中的[2]
先取到['身份證號', 533001199101023456]
。
后面的[1]
取到了['身份證號', 533001199101023456]
中的第2個元素,即533001199101023456
。
取到的數(shù)據(jù)類型為整數(shù)。
7. 課后練習
1.我的書包中有雨傘、手機、錢包;錢包中有銀行卡、公交卡、飯卡。
【題目要求】
- 用一個列表存儲書包中的物品。
- 用一個列表存儲錢包中的物品。
- 編寫代碼從書包列表中取出公交卡。
【參考答案】
# 新建一個錢包列表 qianbao = ["銀行卡", "公交卡", "飯卡"] # 新建一個書包列表 shubao = ["雨傘", "手機", qianbao] # 從書包中取出第3個元素qianbao,然后取出qianbao中的第2個元素公交卡 print(shubao[2][1])
【終端輸出】
公交卡
為了方便大家理解,上述列表名和列表中的元素我都用了中文。
2.取出下面列表中聯(lián)系方式中的19987658765
。
# 新建一個stu列表 stu_list = ["白敬亭", ["聯(lián)系方式", [19987658765, 'xyz77520520']] , ["身份證號", 533001199101023456]]
【參考答案】
# 新建一個stu列表 stu_list = ["白敬亭", ["聯(lián)系方式", [19987658765, 'xyz77520520']] , ["身份證號", 533001199101023456]] # 正索引取值 print(stu_list[1][1][1]) # 負索引取值 print(stu_list[-2][-1][-1]) # 查看取到的元素的數(shù)據(jù)類型 print("取到的元素數(shù)據(jù)類型為",type(stu_list[1][1][1])) print("取到的元素數(shù)據(jù)類型為",type(stu_list[-2][-1][-1]))
【終端輸出】
xyz77520520
xyz77520520
取到的元素數(shù)據(jù)類型為 <class 'str'>
取到的元素數(shù)據(jù)類型為 <class 'str'>
上面是3層列表嵌套(我自己起的名字),大家可以多寫幾個更復雜更多層的列表嵌套取值程序,體驗列表的多索引取值,有報錯的可以截圖或發(fā)源代碼給我。
8. 總結(jié)
列表的索引取值和字符串取值語法一致,注意正索引編號從0開始即可。
本節(jié)重點掌握多次索引取值的語法:列表[索引][索引]
。
列表取值編程中經(jīng)常用到,需要重點掌握。
到此這篇關(guān)于Python 列表的索引取值的文章就介紹到這了,更多相關(guān)Python 索引取值內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python字符串加密解密的三種方法分享(base64 win32com)
這篇文章主要介紹了python字符串加密解密的三種方法,包括用base64、使用win32com.client、自己寫的加密解密算法三種方法,大家參考使用吧2014-01-01500行代碼使用python寫個微信小游戲飛機大戰(zhàn)游戲
這篇文章主要介紹了500行代碼使用python寫個微信小游戲飛機大戰(zhàn)游戲,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-10-10Python迭代器協(xié)議及for循環(huán)工作機制詳解
這篇文章主要介紹了Python迭代器協(xié)議及for循環(huán)工作機制詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-07-07python數(shù)據(jù)庫操作--數(shù)據(jù)庫使用概述
這篇文章主要介紹了python中使用mysql數(shù)據(jù)庫詳細介紹,本文起講解了安裝mysql、安裝MySQL-python、mysql 的基本操作、python 操作mysql數(shù)據(jù)庫基礎等內(nèi)容,需要的朋友可以參考下2021-08-08Python執(zhí)行時間計算方法以及優(yōu)化總結(jié)
python腳本運行時間遠遠大于python腳本中統(tǒng)計的計算時間,所以本文將為大家分享就幾個Python執(zhí)行時間計算方法以及優(yōu)化,感興趣的可以了解一下2022-08-08