Python中tuple的使用
一、什么是元組?
有序列表叫元組:tuple。tuple和list非常類似,但是tuple一旦初始化就不能修改。
二、用法
1. tuple元組的定義
Python的元組與列表類似,不同之處在于元組的元素不能修改。元組使用小括號(hào),列表使用方括號(hào)。元組創(chuàng)建很簡(jiǎn)單,只需要在括號(hào)中添加元素,并使用逗號(hào)隔開(kāi)即可。示例如下:
tup1 = ('361way', 'com', 1997, 2000)print(type(tup1))
tup2 = (1, 2, 3, 4, 5)
tup3 = "a", "b", "c", "d"
print(type(tup3))
這里通過(guò)tup3可以看出,其并沒(méi)有用小括號(hào)進(jìn)行包括,但其也是元組。所以需要記?。喝我鉄o(wú)符號(hào)的對(duì)象,以逗號(hào)隔開(kāi),默認(rèn)為元組 。另外需要特別注意只有一個(gè)元素時(shí)元組的創(chuàng)建:
tup1 = (111)print(type(tup1))
tup1 = ("abc")print(type(tup1))
tup1 = ("abc",)print(type(tup1))
元組中只包含一個(gè)元素時(shí),需要在元素后面添加逗號(hào),否則就會(huì)是int 或 string 等其他數(shù)據(jù)類型。如果只是創(chuàng)建一個(gè)空元組時(shí),則不受逗號(hào)的影響:
tup1 = ()print(type(tup1))
2. 元組的索引與切片
同字符串、列表類型一樣,元組也支持索引與切片 。而且用法也相同,
下面結(jié)合示例查看下:
tup1 = ('361way', 'com', 2013, 2014)print(tup1[0])
print(tup1[4]) #取值超出其索引范圍時(shí)報(bào)錯(cuò)
tup2 = (1, 2, 3, 4, 5, 6, 7)print(tup2[1:5])
由上面的結(jié)果可以看出,取出元組的單個(gè)元素?cái)?shù)據(jù)時(shí),得到的是該數(shù)據(jù)原來(lái)的類型 ; 取出其一段元素值時(shí)得到的仍是元組。
3. 修改元組的值
元組中的元素值是不允許刪除的,但可以使用del語(yǔ)句來(lái)刪除整個(gè)元組,如下實(shí)例:
tup1 = ('361way', 'com', 2013, 2014)del tup1[3] # 刪除單個(gè)元素,報(bào)錯(cuò)
tup1[3] = 'abc' # 更改一個(gè)元素的值,報(bào)錯(cuò)print(tup1[3])
del tup1 # 刪除整個(gè)元組,正常print(tup1)
在實(shí)際應(yīng)用中,有時(shí)候會(huì)遇到需要修改元組的值,那怎么辦呢?可以通過(guò)一個(gè)變通的方法實(shí)現(xiàn)。
示例如下:
tup1 = ('361way', 'com', 2013, 2014)list1 = list(tup1)print(list1)
list1[3] = 'change'print(list1)
tup1 = tuple(list1)print(tup1)
可以將tuple元組的值先通過(guò)list轉(zhuǎn)化為列表,再對(duì)列表內(nèi)的值進(jìn)行修改,修改為再將list轉(zhuǎn)化為tuple 。
不過(guò)這里需要注意的是此時(shí)的tup1已經(jīng)非彼tup1,具體可以通過(guò)id函數(shù)進(jìn)行查看,發(fā)現(xiàn)其內(nèi)存地址已經(jīng)發(fā)生了變化。
三、總結(jié)
本文基于Python基礎(chǔ),主要介紹了Python基礎(chǔ)中tuple元組的使用,對(duì)于tuple的用法做了詳細(xì)的講解,用豐富的案例 ,代碼效果圖的展示幫助大家更好理解 。
tuple是Python內(nèi)置的有序集合,一個(gè)可變,一個(gè)不可變。根據(jù)需要來(lái)選擇使用它們。
最后,希望可以幫助大家更好的學(xué)習(xí)Python。
-
可編程邏輯
+關(guān)注
關(guān)注
7文章
526瀏覽量
45184 -
python
+關(guān)注
關(guān)注
56文章
4848瀏覽量
88901
發(fā)布評(píng)論請(qǐng)先 登錄
【HZ-T536開(kāi)發(fā)板免費(fèi)體驗(yàn)】4、使用藍(lán)牙模塊讀取小米溫濕度計(jì)的數(shù)據(jù)
SQL 通用數(shù)據(jù)類型
IEC101協(xié)議可以傳輸什么類型的數(shù)據(jù)
詳解Prometheus的數(shù)據(jù)類型

labview數(shù)據(jù)類型與PLC 數(shù)據(jù)類型之間的轉(zhuǎn)換(來(lái)自于寫(xiě)入浮點(diǎn)數(shù)到匯川 PLC中的數(shù)據(jù)轉(zhuǎn)換關(guān)鍵的修改)
使用Python實(shí)現(xiàn)xgboost教程
適用于MySQL和MariaDB的Python連接器:可靠的MySQL數(shù)據(jù)連接器和數(shù)據(jù)庫(kù)

字符串在數(shù)據(jù)庫(kù)中的存儲(chǔ)方式
請(qǐng)問(wèn)ADS1299使用Test Signals ,獲取到的數(shù)據(jù)類型是什么?
選擇數(shù)據(jù)采集器時(shí)需要考慮的因素
使用Python進(jìn)行串口通信的案例
對(duì)比Python與Java編程語(yǔ)言
西門子博途新數(shù)據(jù)類型之:SINT(8位整數(shù))

評(píng)論