簡介
元組(Tuple)笛卡爾積中每一個元素(d1,d2,…,dn)叫作一個n元組(n-tuple)或簡稱元組。數據結構
元組和列表十分類似,只不過元組和字元串一樣是不可變的即你不能修改元組。元組通過圓括弧中用逗號分割的項目定義。元組通常用在使語句或用戶定義的函式能夠安全地採用一組值的時候,即被使用的元組的值不會改變。1、Python中元組的書面形式和規範:
tuplename=(tupleitem1,tupleitem2,tupleitem3,tupleitem4)
tuplename=tupleitem1,tupleitem2,tupleitem3,tupleitem4
注意:定義元組的是逗號,而非括弧。
zoo=('wolf','elephant','penguin')
print'Number of animals in the zoo is',len(zoo)
new_zoo=('monkey','dolphin',zoo)
print'Number of animals in the new zoo is',len(new_zoo)
print'All animals in new zoo are',new_zoo
print'Animals brought from old zoo are',new_zoo
print'Last animal brought from old zoo is',new_zoo
一個空的元組由一對空的圓括弧組成,如myempty。然而,含有單個元素的元組必須在第一個(唯一一個)項目後跟一個逗號,這樣Python才能區分元組和表達式中一個帶圓括弧的對象。
容器對象
元組在Scala語言中是一個非常有用的容器對象。與列表一樣,元組也是不可變的;但是與列表不同,元組可以包含不同類型的元素。例如列表只能寫成List[Int]或者List[String],但是元組可以同時擁有Int和String。元組適用場景很多,比方說,如果需要在方法裡返回多個對象。Java里的做法是創建JavaBean已包含多個返回值,Scala里可以僅返回元組。而且做起來也很簡單;只要把元組實例化需要的對象放在括弧里,並用逗號分隔即可。元組實例化之後,可以用點號、下劃線和基於1的索引訪問其中的元素。如:var scalachina=(2010,"Scala中文")
println(scalachina._1)
println(scalachina._2)
運行這段代碼的結果:
2010
Scala中文