本文實(shí)例講述了python元組操作方法,分享給大家供大家參考。具體分析如下:
一般來說,python的函數(shù)用法挺靈活的,和c、php的用法不太一樣,和js倒是挺像的。
在照著操作時(shí),可以發(fā)現(xiàn)一個(gè)很神奇的現(xiàn)象:
?1234 >>> t = (1, 3, 'b') >>> q = t + ((3, 'abc')) >>> q (1, 3, 'b', 3, 'abc')
這里我預(yù)料的應(yīng)該是(1, 3, 'b', (3, 'abc')),但是結(jié)果卻是(1, 3, 'b', 3, 'abc'),剛開始我猜測(cè)python是把所有的元素都提取出來重新按原順序組合。然后我又試了一下:
?123 >>> q = t + ((3, 'abc'), '3') >>> q (1, 3, 'b', (3, 'abc'), '3')
看來猜測(cè)錯(cuò)了,那為什么q = t + ((3, 'abc'))就把元組拆分了呢,我又試了一下:
?123 >>> q = t + ((3, 'abc', ('a'))) >>> q (1, 3, 'b', 3, 'abc', 'a')
python又把元素里的元組里的('a')去掉了(),為了驗(yàn)證我的想法,我進(jìn)一步測(cè)試:
?123 >>> q = t + ((3, 'abc', ('a', 'ab'))) >>> q (1, 3, 'b', 3, 'abc', ('a', 'ab'))
看來結(jié)果已經(jīng)很明了了,在對(duì)元組進(jìn)行+操作時(shí),python會(huì)自動(dòng)對(duì)被加的元組進(jìn)行解析,在保持原元組結(jié)構(gòu)的前提下,把它解析成最簡(jiǎn)單的元組進(jìn)行相加,即把只有單一元素的多重元組去括號(hào)。
那么,如果我不想讓python在+操作時(shí)把()去掉呢,那么這樣操作就行了:
?123 >>> q = t + ((3, 'abc'),) >>> q (1, 3, 'b', (3, 'abc'))
希望本文所述對(duì)大家Python程序設(shè)計(jì)的學(xué)習(xí)有所幫助
更多信息請(qǐng)查看IT技術(shù)專欄