1. 程式人生 > >python3 元組的特性

python3 元組的特性

1.不可變資料型別與可變資料型別

數值型,字串,bool都是不可變資料型別

list是可變資料型別:<有增刪改查>

資料型別含有:int,float,complex(複數),str,list,bool

2.元組的英文tuple,定義元組:空元組,單個值元組,普通元組

元組建立很簡單,只需要在括號中新增元素,並使用逗號隔開即可;

tuple = ("hello")      #字串

print(type(tuple))

tuple1 = ("python",)    #單個值元組

print(type(tuple1))

tuple2 = ()           #空元組

print(type(tuple2))

tuple3 = (2,"hello",[1,2,3])   #普通元組

print(type(tuple3))

3.元組的索引

t = (1, 2, 3, "hello")

print(type(t))

輸出結果:<class 'tuple'>

print(t[0])    #列印元組的第一個元素

輸出結果:1

4.元組進行切片

print(t[1:])    #列印元組除第一個元素的其他元素

輸出結果:(2, 3, 'hello')

print(t[:-1])   #列印元組除了最後一個元素的其他元素

輸出結果:(1, 2, 3)

print(t[::-1])  #反轉元素

輸出結果:('hello', 3, 2, 1)

5.元組可以重複

t = (1, 2, 3, "hello")

print(t*3)   #重複出現三次

輸出結果:(1, 2, 3, 'hello', 1, 2, 3, 'hello', 1, 2, 3, 'hello')

元組不能和其他字串,列表進行連線,只能和元組進行連線

print(t+[5,6,7])

報錯:TypeError: can only concatenate tuple (not "list") to tuple

print(t+(5,6,7))

輸出結果:(1, 2, 3, 'hello', 5, 6, 7)

.如果想要將列表與元組連線,可以將列表強制轉化為元組,然後在進行連線

print(t+tuple([5,6,7]))

輸出結果:(1, 2, 3, 'hello', 5, 6, 7)

6,元組可以進行成員操作符;

print("hello" in t)

輸出結果:True

print("hello" not in t)

輸出結果:False

7.列舉:將字串裡面的元素與索引值一一對應;enumerate(專業術語:列舉)

for index,item in enumerate(t):

   print(index,item)

輸出結果:

0 1
1 2
2 3
3 hello

如果希望知道某元素在第幾位,按順序排列,給索引值加一

    print(index+1,item)

輸出結果:

1 1
2 2
3 3
4 helllo

8, x, y = y, x的賦值過程

x = int(input("請輸入x變數的值:"))

y = int(input("請輸入y變數的值:"))

tuple = (y , x)

x = tuple[0]

y = tuple[1]

print("x,y的值分別為:%d,%d"%(x,y))

另外方法:

tuple = ("prthon" , "java")

print("hello %s, hello %s"%(tuple[0],tuple[1])) #下面公式可以分解為該公式;

print("hello %s, hello %s" %(tuple))

9.元組的賦值

tuple = ("xiaoming", 18, 50)

name, age, weight = tuple

print(name, age, weight)

輸出結果:xiaoming 18 50

10.列表的賦值

list = ["xiaoming", 18, 50]     ###注意賦值只能一一對應,不能缺少也不能多處,否則會報錯

name, age, weight = list

print(name, age, weight)

輸出結果:xiaoming 18 50

11,元組中的元素是不允許修改的,可以將兩個yuan元素合併為一個新的元素

t1 = (1,2,3,"hello")
t2 = ("xiaoming", 18, 50)
t3 = t1 + t2
print(t3)
輸出結果:(1, 2, 3, 'hello', 'xiaoming', 18, 50)

12,刪除元組

元組中的元素值是不允許刪除的,但我們可以使用del語句來刪除整個元組

t1 = (1,2,3,"hello")
t2 = ("xiaoming", 18, 50)
del t2
print(t1)
print(t2)

輸出結果為:
(1, 2, 3, 'hello')
NameError: name 't2' is not defined