複製鏈接
請複製以下鏈接發送給好友

元組

鎖定
元組(tuple)是關係數據庫中的基本概念,關係是一張,表中的每行(即數據庫中的每條記錄)就是一個元組,每列就是一個屬性。 在二維表裏,元組也稱為行。 [1] 
中文名
元組
外文名
Tuple
別    名
相關概念
列表
性    質
元組是關係數據庫中的基本概念
釋    義
數據庫中的每條記錄

元組定義

元組 元組
笛卡爾積中每一個素(d1,d2,…,dn),叫作一個n元組(n-tuple)或簡稱元組。當關系是一張表,二維表中的行表中的每行(即數據庫中的每條記錄)就是一個元組,每列就是一個屬性。在二維表裏,元組也稱為記錄。 [2] 

元組用法

以Python為例。
元組也是一種序列。元組使用括弧“()”來界定;元組中各元素之間用逗號隔開。元組不支持修改或刪除其所包含的元素。如果要修改,則可以使用list函數把它轉化成列表,然後在列表上進行修改創建元組的方法有三種:
1、使用括弧“()”來創建,例如,a=(1,2,3);
2、使用逗號來創建,例如,b=2,4;
3、使用 tuple0函數把其他種類的序列轉化為元組,例如,c= tuple(“Good!”)。 [3] 
元組是一種序列,它支持序列的基本操作,包括索引、切片、序列加、序列乘、in、len()、max()、min()。元組不可修改,指的是元組中每個元素的指向永遠不變。例如,元組a=('Tim',201607,['Python',71]),其中a[1]=201607是整型數據,元組a不能修改a[1];a[2]=[ 'Python',71]是列表,元組a可以修改a[2][1]。元組a的第三個元素為列表,列表的內容是允許改變的,它的內存位置並沒有變化。 [3] 

元組訪問組元

元組可以使用下標索引來訪問元組中的值,如下實例:
#!/usr/bin/pythontup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5, 6, 7 )print "tup1[0]: ", tup1[0]
print "tup2[1:5]: ", tup2[1:5]
以上實例輸出結果:
tup1[0]:  physicstup2[1:5]:  (2, 3, 4, 5)

元組修改元組

元組中的元素值是不允許修改的,但我們可以對元組進行連接組合,如下實例:
#!/usr/bin/python# 
-*- coding: UTF-8 -*-tup1 = (12, 34.56)
tup2 = ('abc', 'xyz')# 以下修改元組元素操作是非法的。
# tup1[0] = 100# 創建一個新的元組
tup3 = tup1 + tup2
print tup3
以上實例輸出結果:
(12, 34.56, 'abc', 'xyz')

元組刪除元組

元組中的元素值是不允許刪除的,但我們可以使用del語句來刪除整個元組,如下實例:
#!/usr/bin/pythontup = ('physics', 'chemistry', 1997, 2000)print tup
del tup
print "After deleting tup : "
print tup
以上實例元組被刪除後,輸出變量會有異常信息,輸出如下所示:
('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):File "test.py", line 9, in <module>    print tup
NameError: name 'tup' is not defined

元組元組與列表區別

元組與列表相同,也是容器對象,可以存儲不同類型的內容。元組與列表有兩個不同點。第一個不同點是元組的聲明使用小括號,而列表使用方括號,當聲明只有一個元素的元組時,需要在這個元素的後面添加英文逗號;第二個不同點是元組聲明和賦值後,不能像列表一樣添加、刪除和修改元素,也就是説元組在程序運行過程中不能被修改。
用於列表的排序、替換、添加等方法也不適用於元組,適用於元組的主要運算有元組的合併、遍歷、求元組的最大值和最小值等操作方法。
參考資料
  • 1.    王珊 薩師煊.數據庫系統概率(第5版):高等教育出版社,2014:25
  • 2.    周屹 李豔娟.數據庫原理及開發應用(第二版):清華大學出版社,2013:35
  • 3.    方誌軍編.計算機導論 第3版:中國鐵道出版社,2017.08:第152頁