簡(jiǎn)單了解python元組tuple相關(guān)原理
這篇文章主要介紹了簡(jiǎn)單了解python元組tuple相關(guān)原理,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
元組tuple和列表List類似,元組有如下特點(diǎn):
1.由一個(gè)或者多個(gè)數(shù)據(jù)構(gòu)成,數(shù)據(jù)的類型可以不相同也可以相同;
2.元組中的數(shù)據(jù)需要寫在()中括號(hào)內(nèi)部,數(shù)據(jù)與數(shù)據(jù)之間用逗號(hào)隔開;
3.元組是一個(gè)有序的集合,下標(biāo)索引默認(rèn)重 0 開始,和字符串類似;
4.元組的數(shù)據(jù)不能被修改
元組
元組其實(shí)也稱為只讀列表,列表支持的函數(shù)元組同樣也支持,唯一區(qū)別是元組tuple中的數(shù)據(jù)不能被修改,這就意味著不能刪除元組tuple中的數(shù)據(jù),也不能直接給元組tuple中的數(shù)據(jù)賦值。
一.元組tuple定義
# !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:何以解憂 @Blog(個(gè)人博客地址): shuopython.com @WeChat Official Account(微信公眾號(hào)):猿說python @Github:www.github.com @File:python_tuple.py @Time:2019/9/26 20:45 @Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅(jiān)持不懈地積累! """ tuple1 = tuple() # 定義一個(gè)空元組,元組的數(shù)據(jù)不能修改,意味永遠(yuǎn)都是一個(gè)空元組 print(tuple1) print(type(tuple1)) # 獲取數(shù)據(jù)類型 tuple2 = ("python","study") # 定義元組tuple2 ,該元組由兩個(gè)字符串?dāng)?shù)據(jù)構(gòu)成 print(tuple2) tuple3= ("python","s",False,2.5) # 定義元組tuple3 ,該元組中的數(shù)據(jù)可以由不同類型的數(shù)據(jù)構(gòu)成 print(tuple3)
輸出結(jié)果:
() <class 'tuple'> ('python', 'study') ('python', 's', False, 2.5)
二.元組tuple查詢
元組tuple的查詢和列表list的操作類似,同樣也可以直接通過下標(biāo)查詢?cè)M中的數(shù)據(jù),演示代碼如下:
tuple1= ("python","s",False,2.5,40,"tuple") # 元組中的數(shù)據(jù)可以由不同類型的數(shù)據(jù)構(gòu)成 print(type(tuple1)) # 通過內(nèi)置函數(shù)type獲取數(shù)據(jù)類型 print(tuple1) print(tuple1[1]) # 獲取元組中索引值為1 的數(shù)據(jù) print(tuple1[len(tuple1)-1]) # 獲取元組中的最后一個(gè)元素,注意是len(tuple)-1,并非len(tuple) print(tuple1[1:4]) # 獲取元組索引值1-4的數(shù)據(jù) print(tuple1[:5]) # 如果冒號(hào)之前沒有設(shè)置參數(shù),默認(rèn)重0開始,表示獲取元組索引值0-5的數(shù)據(jù) print(tuple1[3:]) # 如果冒號(hào)之后沒有設(shè)置參數(shù),默認(rèn)到元組最后一個(gè)數(shù)據(jù)介紹,包括最后一個(gè)數(shù)據(jù)
輸出結(jié)果:
<class 'tuple'> ('python', 's', False, 2.5, 40, 'tuple') s tuple ('s', False, 2.5) ('python', 's', False, 2.5, 40) (2.5, 40, 'tuple')
三.元組tuple不支持刪除/修改數(shù)據(jù)
元組tuple中的數(shù)據(jù)只能讀取,不能修改也不能刪除,如果對(duì)元組tuple中的數(shù)據(jù)刪除或者修改會(huì)報(bào)錯(cuò),代碼演示:
# 測(cè)試修改元組數(shù)據(jù) tuple1= ("python","s",False,2.5,40,"tuple") # 元組中的數(shù)據(jù)可以由不同類型的數(shù)據(jù)構(gòu)成 tuple1[0] = False
編譯器會(huì)報(bào)錯(cuò):TypeError: ‘tuple' object does not support item assignment(翻譯:元組tuple不支持修改)
# 測(cè)試刪除元組數(shù)據(jù) tuple1= ("python","s",False,2.5,40,"tuple") # 元組中的數(shù)據(jù)可以由不同類型的數(shù)據(jù)構(gòu)成 del tuple1[0]
編譯器會(huì)報(bào)錯(cuò):TypeError: ‘tuple' object doesn't support item deletion(翻譯:元組tuple不支持刪除)
四.元組tuple與列表list的相互轉(zhuǎn)換
兩者之間直接強(qiáng)制轉(zhuǎn)換即可,演示代碼如下:
# 元組tuple 轉(zhuǎn)為 列表list tuple1= ("python","s",False,2.5,40,"tuple") list1 = list(tuple1) print("tuple1數(shù)據(jù)類型是:",type(tuple1)) print("list1數(shù)據(jù)類型是:",type(list1)) print("***"*20) # 小竅門:直接打印60個(gè)* # 列表list 轉(zhuǎn)為 元組tuple list2 = [False,"好好學(xué)習(xí)",0,3.14] tuple2 = tuple(list2) print("tuple2數(shù)據(jù)類型是:",type(tuple2)) print("list2數(shù)據(jù)類型是:",type(list2))
輸出結(jié)果:
tuple1數(shù)據(jù)類型是: <class 'tuple'> list1數(shù)據(jù)類型是: <class 'list'> ************************************************************ tuple2數(shù)據(jù)類型是: <class 'tuple'> list2數(shù)據(jù)類型是: <class 'list'>
五.重點(diǎn)總結(jié)
1.注意元組tuple與列表list的區(qū)別,元組的數(shù)據(jù)不能被修改,其他使用和列表一樣。
2.注意元組tuple/列表list/字符串str三者的寫法區(qū)別:
a = "python教程" # 字符串 b = ["python教程"] # 列表,列表中只有一個(gè)字符串?dāng)?shù)據(jù) c = ("python教程") # 元組,元組中只有一個(gè)字符串?dāng)?shù)據(jù)
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Python 元組(Tuple)操作詳解
- Python中的tuple元組詳細(xì)介紹
- python學(xué)習(xí)筆記之列表(list)與元組(tuple)詳解
- Python 把序列轉(zhuǎn)換為元組的函數(shù)tuple方法
- Python數(shù)據(jù)類型之Tuple元組實(shí)例詳解
- python中列表(list)和元組(tuple)的深入講解
- Python元組 tuple的概念與基本操作詳解【定義、創(chuàng)建、訪問、計(jì)數(shù)、推導(dǎo)式等】
- Python 元組拆包示例(Tuple Unpacking)
- Python3 元組tuple入門基礎(chǔ)
- Python中的元組(Tuple)操作實(shí)例詳解
相關(guān)文章
Python udp網(wǎng)絡(luò)程序?qū)崿F(xiàn)發(fā)送、接收數(shù)據(jù)功能示例
這篇文章主要介紹了Python udp網(wǎng)絡(luò)程序?qū)崿F(xiàn)發(fā)送、接收數(shù)據(jù)功能,結(jié)合實(shí)例形式分析了Python使用socket模塊進(jìn)行udp套接字創(chuàng)建、數(shù)據(jù)收發(fā)等相關(guān)操作技巧,需要的朋友可以參考下2019-12-12python調(diào)用百度地圖WEB服務(wù)API獲取地點(diǎn)對(duì)應(yīng)坐標(biāo)值
這篇文章主要為大家詳細(xì)介紹了python調(diào)用百度地圖WEB服務(wù)API獲取地點(diǎn)對(duì)應(yīng)坐標(biāo)值,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01PyTorch基礎(chǔ)之torch.nn.Conv2d中自定義權(quán)重問題
這篇文章主要介紹了PyTorch基礎(chǔ)之torch.nn.Conv2d中自定義權(quán)重問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02Spring Cloud Feign高級(jí)應(yīng)用實(shí)例詳解
這篇文章主要介紹了Spring Cloud Feign高級(jí)應(yīng)用實(shí)例詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12Python中threading.Timer()定時(shí)器實(shí)現(xiàn)定時(shí)任務(wù)
本文主要介紹了Python中threading.Timer()定時(shí)器實(shí)現(xiàn)定時(shí)任務(wù),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01