前言
在Python編程世界中,列表和元組是兩個最常用的數(shù)據(jù)結(jié)構(gòu)之一。無論是初學(xué)者還是經(jīng)驗豐富的開發(fā)者,對于這兩個數(shù)據(jù)類型的掌握都至關(guān)重要。
列表和元組都是用于存儲多個值的容器,但它們在性質(zhì)和特性上有所不同。列表是可變的,可以隨意修改、添加或刪除其中的元素,而元組是不可變的,一旦創(chuàng)建便無法更改。這使得它們在不同的場景和任務(wù)中有著各自的用途。
本博客將帶你深入了解Python列表和元組的魅力與應(yīng)用。我們將探索它們的基本操作,如創(chuàng)建、訪問和切片操作,以及高級技巧,如列表和元組的嵌套、排序和列表解析等。我們還將比較它們的性能特點,以及何時選擇使用列表或元組。
通過閱讀本博客,你將對列表和元組有一個全面的理解,并能夠靈活運用它們解決實際問題。無論你是新手還是有經(jīng)驗的Python開發(fā)者,這里都將為你帶來有價值的知識和技巧。
準(zhǔn)備好了嗎?讓我們一起踏上探索Python列表和元組之旅吧!??????
列表
什么是 python 列表
Python中的列表是一種有序的、可變的數(shù)據(jù)類型。它可以存儲任意數(shù)量的元素,并且這些元素可以是不同的數(shù)據(jù)類型,如整數(shù)、浮點數(shù)、字符串等。
列表使用方括號 [] 來創(chuàng)建,其中的元素可以通過逗號進(jìn)行分隔。
message = [1,2,'zhangsan',13.14]
print(type(message))
1)使用列表序列[n]來訪問列表中的元素
message = [1,2,'zhangsan',13.14]
print(message[0])
print(message[2])
2)列表中的元素可修改
message = [1,2,'zhangsan',13.14]
message[2] = 'lisi'
print(message)
列表中常用的方法
??index() 返回指定序列的下標(biāo)
message = [1,2,'zhangsan',13.14]
print(message.index(2))
print(message.index(13.14))
當(dāng)列中中部存在待查找的數(shù)據(jù)時,會報錯
message = [1,2,'zhangsan',13.14]
print(message.index('lisi'))
??count() 返回指定數(shù)據(jù)在列表中出現(xiàn)的次數(shù)
message = [1,2,'zhangsan',13.14,1,2,1]
print(message.count('zhangsan'))
print(message.count(1))
print(message.count(2))
print(message.count('lisi'))
??len() 返回列表的長度
message = [1,2,'zhangsan',13.14,1,2,1]
print(len(message))
??in 判斷指定數(shù)據(jù)是否在列表中
message = [1,2,'zhangsan',13.14,1,2,1]
print('zhangsan' in message)
print('lisi' in message)
??判斷指定數(shù)據(jù)是否不在列表中
message = [1,2,'zhangsan',13.14,1,2,1]
print('zhangsan' not in message)
print('lisi' not in message)
??append() 列表結(jié)尾追加數(shù)據(jù)
message = [1,2,'zhangsan',13.14,1,2,1]
print(message)
message.append('lisi')
print(message)
列表不僅可以追加整數(shù)、浮點數(shù)、字符串,還可以追加列表
message = [1,2,'zhangsan',13.14,1,2,1]
print(message)
message1 = ['wangwu','zhaoliu']
message.append(message1)
print(message)
print(message[7])
??extend() 列表結(jié)尾追加數(shù)據(jù)
append()函數(shù) 和 extend()函數(shù)都可以在列表結(jié)尾追加數(shù)據(jù),但是extend與append不同的是,它會將這個數(shù)據(jù)拆分然后再追加到列表結(jié)尾。
message = [1,2,3,'zhangsan',13.14]
message.extend('lisi')
print(message)
message = [1,2,3,'zhangsan',13.14]
message1 = ['lisi','wangwu']
message.extend(message1)
print(message)
??insert() 指定位置增加數(shù)據(jù)
message = [1,2,3,'zhangsan',13.14]
message.insert(1,'lisi')
print(message)
如果指定位置的下標(biāo)為負(fù)數(shù)怎么辦呢?我們都知道列表最后一個數(shù)據(jù)的下標(biāo)也可以是-1,那么當(dāng)指定位置的下標(biāo)為負(fù)數(shù)時,表明從列表的末尾開始添加。
message = [1,2,3,'zhangsan',13.14]
message.insert(-1,'lisi')
message.insert(-3,'wangwu')
print(message)
當(dāng)指定位置的下標(biāo)超過 列表長度 - 1 了該怎么辦?他會在列表的結(jié)尾增加數(shù)據(jù)。
message = [1,2,3,'zhangsan',13.14]
message.insert(100,'lisi')
print(message)
??del 刪除指定位置的數(shù)據(jù)
當(dāng)使用 del 列表序列
時,會將整個列表都刪除。
message = [1,2,3,'zhangsan',13.14]
del message
print(message)
使用 del 列表序列[n]
刪除列表中的指定數(shù)據(jù)
message = [1,2,3,'zhangsan',13.14]
del message[3]
print(message)
??pop() 刪除元素
pop() 函數(shù)也是刪除列表的元素,但是它與 del函數(shù) 不同的是:pop() 函數(shù)默認(rèn)刪除列表的最后一個元素,并且會返回刪除的元素。
message = [1,2,3,'zhangsan',13.14]
tmp = message.pop()
print(message)
print(tmp)
列表序列.pop(下標(biāo))
也可以刪除指定下標(biāo)的數(shù)據(jù)。
message = [1,2,3,'zhangsan',13.14]
tmp = message.pop(3)
print(message)
print(tmp)
??????remove() 移除列表的指定數(shù)據(jù)
message = [1,2,3,'zhangsan',13.14]
message.remove('zhangsan')
print(message)
這里刪除數(shù)據(jù)可以根據(jù)給出的是需要刪除的下標(biāo)還是需要刪除的數(shù)據(jù)以及刪除的位置來選擇使用 del函數(shù)、pop函數(shù)、remove函數(shù)
??clear() 清除列表
message = [1,2,3,'zhangsan',13.14]
message.clear()
print(message)
??reverse() 逆置列表
message = [1,2,3,'zhangsan',13.14]
message.reverse()
print(message)
??sort() 將列表排序
列表序列.sort(key = None , reverse = False)
,在這里我們先不討論 key 的含義,
reverse = False 表明是按升序排列(默認(rèn)),reverse = True 表明按降序排列
message = [1,2,3,68,13.14]
message.sort(reverse = False)
print(message)
message = [1,2,3,68,13.14]
message.sort(reverse = True)
print(message)
當(dāng)我們使用sort函數(shù)的時候,列表中不能同時存在字符串和整數(shù)或者浮點數(shù),但是可以只存在字符串類型,當(dāng)列表中只有字符串類型時,按字典順序排列
message = [1,2,3,'zhangsan',13.14]
message.sort()
print(message)
message = ['zhangsan','lisi','wangwu']
message.sort()
print(message)
??copy() 復(fù)制列表
message = [1,2,3,'zhangsan',13.14]
message1 = message.copy()
print(message1)
使用循環(huán)遍歷列表
while循環(huán)遍歷列表
message = [1,2,3,'zhangsan',13.14]
i = 0
while i < len(message): # len() 函數(shù)求列表長度
print(message[i],end = '\t')
i += 1
for循環(huán)遍歷列表
message = [1,2,3,'zhangsan',13.14]
for i in message:
print(i,end = '\t')
列表的嵌套
列表中可以包含各種數(shù)據(jù)類型,當(dāng)然也可以包含列表。
message = [1,2,3,'zhangsan',['lisi','wangwu']]
print(message)
print(type(message))
如果我們想要訪問列表中的列表中的數(shù)據(jù)(哈哈哈,有點繞?。?,可以使用
列表序列[列表中的列表所對應(yīng)的下標(biāo)][ n ]
message = [1,2,3,'zhangsan',['lisi','wangwu']]
print(message[4][0])
print(message[4][1])
元組
什么是 python 元組
Python中的元組是一種有序的、不可變的數(shù)據(jù)類型。它類似于列表,但與列表不同的是,元組的元素是不可修改的。
元組使用圓括號 () 來創(chuàng)建,其中的元素可以通過逗號進(jìn)行分隔。
message = (1,2,3,'zhangsan',13.14)
print(type(message))
**元組中需要注意的是:當(dāng)元組中只有一個數(shù)據(jù)的時候,那個數(shù)據(jù)后面要加上
逗號( , ), 因為如果不加逗號的話,那么這個數(shù)據(jù)是什么類型,這個變量就會是什么類型。
message = (1)
print(type(message))
message = (1,)
print(type(message))
元組中的數(shù)據(jù)不能隨意更改
message = (1,2,3,'zhangsan',13.14)
message[0] = 8
print(message)
如果要想更改元組中的數(shù)據(jù),只能重新整體賦值
message = (1,2,3,'zhangsan',13.14)
message = (8,2,3,'zhangsan',13.14)
print(message)
但是如果元組中存在列表的話,那么這個列表是可更改的(但是不建議更改)
message = (1,2,3,'zhangsan',13.14,['lisi','wangwu'])
message[5][0] = 'zhaoliu'
print(message)
我們要盡量遵守元組數(shù)據(jù)不可更改的原則。
元組常見操作
??index() 返回指定數(shù)據(jù)的下標(biāo)
如果指定數(shù)據(jù)存在,則返回指定數(shù)據(jù)的下標(biāo),如果不存在,則報錯。文章來源:http://www.zghlxwxcb.cn/news/detail-516244.html
message = (1,2,3,'zhangsan',13.14)
print(message.index('zhangsan')) # 3
??count() 返回指定數(shù)據(jù)出現(xiàn)的次數(shù)
message = (1,2,3,'zhangsan',13.14)
print(message.count('zhangsan')) # 1
print(message.count('lisi')) # 0
??len() 返回元組的長度
message = (1,2,3,'zhangsan',13.14)
print(len(message)) # 5
??????感謝大家的觀看哦,如有錯誤,歡迎指正,如果大家覺得不錯的話,記得點個贊哦,也歡迎大家訂閱我的 python學(xué)習(xí)專欄??????文章來源地址http://www.zghlxwxcb.cn/news/detail-516244.html
到了這里,關(guān)于Python之花舞盛宴:探索列表與元組之美與妙用的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!