tuple和list一樣糕珊,可以包含 0 個(gè)磷斧、1個(gè)和任意多個(gè)元素振愿。
包含多個(gè)元素的 tuple,前面我們已經(jīng)創(chuàng)建過(guò)了弛饭。
包含 0 個(gè)元素的 tuple冕末,也就是空tuple,直接用 ()表示:
>>> t = ()
>>> print t
()
創(chuàng)建包含1個(gè)元素的 tuple 呢侣颂?來(lái)試試:
>>> t = (1)
>>> print t
1
好像哪里不對(duì)档桃!t 不是 tuple ,而是整數(shù)1憔晒。為什么呢藻肄?
因?yàn)?)既可以表示tuple,又可以作為括號(hào)表示運(yùn)算時(shí)的優(yōu)先級(jí)拒担,結(jié)果 (1) 被Python解釋器計(jì)算出結(jié)果 1嘹屯,導(dǎo)致我們得到的不是tuple,而是整數(shù) 1从撼。
正是因?yàn)橛?)定義單元素的tuple有歧義州弟,所以 Python 規(guī)定,單元素 tuple 要多加一個(gè)逗號(hào)“,”低零,這樣就避免了歧義:
>>> t = (1,)
>>> print t
(1,)
Python在打印單元素tuple時(shí)呆馁,也自動(dòng)添加了一個(gè)“,”,為了更明確地告訴你這是一個(gè)tuple毁兆。
多元素 tuple 加不加這個(gè)額外的“,”效果是一樣的:
>>> t = (1, 2, 3,)
>>> print t
(1, 2, 3)