Python元組的定義及使用
1、
在Python中元組是一個(gè)和列表非常類似的數(shù)據(jù)類型,不同之處就是列表中的元素可以修改,而元組之中的元素不可以修改。
2、定義和使用元組
2.1 定義
定義元素通常使用小括號(hào)()字面量語法,示例代碼如下:
tuple1 = ("Hello", "一碗周", "你好")
print(type(tuple1)) # 查看元組類型 <class 'tuple'>
print(tuple1) # ('Hello', '一碗周', '你好')
2.2 使用
元組支持的運(yùn)算符和使用方法和列表是一樣的,示例代碼如下:
tuple1 = ("Hello", "一碗周", "掘金", "開發(fā)者", "strive")
tuple2 = (10, 20, 60, 34)
# 拼接
tuple3 = tuple1 + tuple2
print(tuple3) # ('Hello', '一碗周', '掘金', '開發(fā)者', 'strive', 10, 20, 60, 34)
print(tuple2 * 2) # (10, 20, 60, 34, 10, 20, 60, 34)
# 索引和切片
print(tuple1[1], tuple1[-4]) # 一碗周 一碗周
print(tuple3[:2]) # ('Hello', '一碗周')
print(tuple3[::2]) # ('Hello', '掘金', 'strive', 20, 34)
# 遍歷操作
for ch in tuple1:
print(ch)
'''
Hello
一碗周
掘金
開發(fā)者
strive
'''
# 成員運(yùn)算
print("一碗周" in tuple1) # True
print("掘金" not in tuple1) # False
一個(gè)空()表示空元組,一個(gè)元組中有兩個(gè)元素,稱之為二元組,有五個(gè)就成稱為五元組,但是如果里面為('hello')則不是元組,這個(gè)括號(hào)就變成了改變優(yōu)先級(jí)的圓括號(hào)了;如要想要使其變成圓括號(hào),就要加上一個(gè)逗號(hào),,否則就不是代表一元組了。
示例代碼如下:
a = ()
print(type(a)) # <class 'tuple'>
b = ('一碗周')
print(type(b)) # <class 'str'>
c = (100)
print(type(c)) # <class 'int'>
d = ('一碗周', )
print(type(d)) # <class 'tuple'>
e = (100, )
print(type(e)) # <class 'tuple'>
3、元組的應(yīng)用場(chǎng)景
3.1 打包和解包
把多個(gè)用逗號(hào)分隔的值賦給一個(gè)變量時(shí),多個(gè)值會(huì)打包成一個(gè)元組類型;把一個(gè)元組賦值給多個(gè)變量時(shí),元組會(huì)解包成多個(gè)值然后分別賦給對(duì)應(yīng)的變量,
示例代碼如下:
t = "Hello", "一碗周", "掘金", "開發(fā)者", "strive"
print(type(t)) # <class 'tuple'>
print(t) # ('Hello', '一碗周', '掘金', '開發(fā)者', 'strive')
x, y, z, i, j = t
print(x, y, z, i, j) # Hello 一碗周 掘金 開發(fā)者 strive
如果在解包時(shí),元素的個(gè)數(shù)和變量的個(gè)數(shù)不一致,就引起錯(cuò)誤,就比如下面這段代碼
t= ("Hello", "一碗周", "掘金", "開發(fā)者", "strive")
# x, y, z = t # ValueError: too many values to unpack
x, y, z, i, j, k, l = t # ValueError: not enough values to unpack
ValueError: too many values to unpack解包的值不足
ValueError: not enough values to unpack解包的值太多
解決變量少于元組個(gè)數(shù)這個(gè)錯(cuò)誤的方法是使用*通配符,有了這個(gè)通配符一個(gè)變量就可以接收多個(gè)值,就將某個(gè)變個(gè)變成了一個(gè)列表,這個(gè)通配符只能出現(xiàn)一次,
示例代碼如下:
t = ("Hello", "一碗周", "掘金", "開發(fā)者", "strive")
x, y, *z = t
print(x, y, z) # Hello 一碗周 ['掘金', '開發(fā)者', 'strive']
x, *y, z = t
print(x, y, z) # Hello ['一碗周', '掘金', '開發(fā)者'] strive
*x, y, z = t
print(x, y, z) # ['Hello', '一碗周', '掘金'] 開發(fā)者 strive
3.2 交換兩個(gè)變量的值
在Python中,交換兩個(gè)變量a和b的值只需要使用如下所示的代碼
a, b = b, a
同理,如果要將三個(gè)變量a、b、c的值互換,即b賦給a,c賦給b,a賦給c,也可以如法炮制。
a, b, c = b, c, a
3.3 讓函數(shù)返回多個(gè)值
如果return語句中有兩個(gè)值,這兩個(gè)值會(huì)組裝成一個(gè)二元組然后返回。所以調(diào)用定義的函數(shù)會(huì)得到這個(gè)二元組,也可以通過解包語法將二元組中的兩個(gè)值分別賦給兩個(gè)變量。
到此這篇關(guān)于Python元組的定義及使用的文章就介紹到這了,更多相關(guān)Python元組定義及使用內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
關(guān)注官方微信