元組tuple和列表list很是類似,可是tuple一旦建立就沒法再修改了。python
建立好的元組tuple test不能變了,它也沒有append(),insert()這樣的方法。其餘獲取元素的方法和list是同樣的,你能夠正常地使用test[0],test[-1]
,但不能賦值成另外的元素。不可變的tuple有什麼意義?由於tuple不可變,因此代碼更安全。若是可能,能用tuple代替list就儘可能用tuple。tuple的陷阱:當你定義一個tuple時,在定義的時候,tuple的元素就必須被肯定下來。安全
定義一個空的元組tuple用(),可是要定義有一個元素的元組tuple不能用這種形式(1),由於()既能夠表示元組tuple,也能夠表示數學公式中的小括號,致使產生了歧義。所以,Python在這種狀況下是按照數學公式中的小括號計算的,因此,只有一個元素的元組tuple定義時必須加一個逗號,,來消除歧義app
3.補充學習
根據前面的學習能夠得知str,list,tuple有不少共性,在python中把它們稱爲序列,序列就是有序的。獲取序列中指定位置的元素叫切片。另外判斷某個元素在不在該序列中用in, 不在該序列中用not in;判斷序列中的最大值用max,最小值用min,spa
。。。code