python基礎教程之元組操作使用詳解
來源:易賢網(wǎng) 閱讀:776 次 日期:2016-06-30 09:41:24
溫馨提示:易賢網(wǎng)小編為您整理了“python基礎教程之元組操作使用詳解”,方便廣大網(wǎng)友查閱!

這篇文章主要介紹了python的元組操作使用方法,需要的朋友可以參考下。

簡介tuple1.元組是以圓括號“()”包圍的數(shù)據(jù)集合,不同成員以“,”分隔。通過下標進行訪問2.不可變序列,可以看做不可變的列表,與列表不同:元組中數(shù)據(jù)一旦確立就不能改變(所以沒有類似列表的增刪改操作,只有基本序列操作)3.支持任意類型,任意嵌套以及常見的序列操作4.元組通常用在使語句或用戶定義的函數(shù)能夠安全地采用一組值的時候,即被使用的元組的值不會改變聲明及使用

代碼如下:

t=()#空元組

t=(1,)#單個元素元組,注意逗號必須

t=(1,2,3)

1int#判斷

2notint#其他同序列基本操作:分片,索引

printt[0]

printt[-1]

printt[:2]#不會對原來元組造成影響

printt+(4,5)#返回新元組(1,2,3,4,5)

printt*2#(1,2,3,1,2,3)

t.index(1)

t.count(1)#列表元組轉換

l=[1,2,3]

lt=tuple(l)

tl=list(lt)

lt_sorted=sorted(l)#對元組進行排序,返回是列表#字符串轉元組(得到字符元組序列)

printtuple('hello)#('h','e','l','l','o')

tuple沒有append/extend/remove/pop等增刪改操作tuple沒有find查看幫助

代碼如下:

help(tuple)

用途1.賦值

代碼如下:

t=1,2,3#等價t=(1,2,3)

x,y,z=t#序列拆封,要求左側變量數(shù)目和右側序列長度相等

2.函數(shù)多個返回值

代碼如下:

deftest():

return(1,2)

x,y=test()

3.傳參[強制不改變原始序列]

代碼如下:

defprint_list(l):

t=tuple(l)#或者t=l[:]

dosomething()

4.字符串格式化

代碼如下:

print'%sis%syearsold'%('tom',20)

5.作為字典的key優(yōu)點

1.性能tuple比列表操作速度快若需要定義一個常量集,或者是只讀序列,唯一的操作是不斷遍歷之,使用tuple代替list

代碼如下:

>>>a=tuple(range(1000))

>>>b=range(1000)

>>>deftest_t():

...foriina:

...pass

...

>>>deftest_l():

...foriinb:

...pass

...

>>>fromtimeitimporttimer

>>>at=timer(test_t(),from__main__importtest_t)

>>>bt=timer(test_l(),from__main__importtest_l)

簡單測試

代碼如下:

>>>at.repeat(3,100000)

[1.526214838027954,1.5191287994384766,1.5181210041046143]>>>bt.repeat(3,100000)

[1.5545141696929932,1.557785987854004,1.5511009693145752]2.不可變性對不需要的數(shù)據(jù)進行“寫保護”,使代碼更加安全不可變性,若在程序中以列表形式傳遞對象集合,可能在任何地方被改變,使用元組,則不能不可變性只適用于元組本身頂層而非其內容,例如元組內部的列表可以修改

代碼如下:

l=[1,2,3]

t=(1,2,l)

l.append(4)

不可變性提供了某種完整性,規(guī)范化,確保不會被修改,保持某種固定關系修改的方法

代碼如下:

tuple->list->tuple

更多信息請查看腳本欄目
易賢網(wǎng)手機網(wǎng)站地址:python基礎教程之元組操作使用詳解

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權所有:易賢網(wǎng)