一、list
zz = [1,2,3]
二、tuple
ZZ = ('1','2')
區(qū)別1:
list是用 [ ]
tuple是用( )
區(qū)別2:
list,可以使用append方法和insert方法,如:
zz.append('z')
則zz = [1,2,3,z]

tuple,不可以使用append方法和insert方法,會(huì)報(bào)錯(cuò)如下:
>>> ZZ.append('zzzz')Traceback (most recent call last):  File "<stdin>", line 1, in <module>AttributeError: 'tuple' object has no attribute 'append'
區(qū)別3:
list,可以指定某個(gè)位置的元素:即:list可變,如
zz[0] = 'zzzzzasasadas'

tuple,不可以指定某個(gè)位置的元素,即:tuple不可變,會(huì)報(bào)錯(cuò)如下:
>>> ZZ[0]='SDQWDQWEDQWE'Traceback (most recent call last):  File "<stdin>", line 1, in <module>TypeError: 'tuple' object does not support item assignment
假如tuple的某一個(gè)元素是list,那么可以改變tuple中的list的元素,但本質(zhì)上,tuple是沒(méi)有改變,因?yàn)閆Z的第三個(gè)元素是個(gè)list,list可變

區(qū)別4:
定義只有一個(gè)元素的時(shí)候:
list:zz = ['xx']
tuple:ZZ = (1,)  這個(gè)括號(hào)里一定要加一個(gè)逗號(hào), 否則會(huì)引起歧義.
假如定義為ZZ = (1),定義的不是tuple,而是1這個(gè)數(shù),因?yàn)?)既可以表示括號(hào),又可以表示為數(shù)學(xué)公式中的小括號(hào),就會(huì)產(chǎn)生歧義,

更多iOS、Android、Python的文章,請(qǐng)點(diǎn)擊:
http://blog.csdn.net/jamiecheung
更多java、Unity3D的文章,請(qǐng)點(diǎn)擊:
http://blog.csdn.net/u010841622
新聞熱點(diǎn)
疑難解答
網(wǎng)友關(guān)注