元组

元组tuple用()表示, 里面可以存任意的数据类型

元组的声明和取值

>>> (1,2,3,4)
(1, 2, 3, 4)
>>> (1,2,"a",True,False)
(1, 2, 'a', True, False)
>>> (1,2,"a",True,False)[0]
1
>>> type(1)
<class 'int'>
>>> type([1])
<class 'list'>
>>> type("hello")
<class 'str'>
>>> type((1,2))
<class 'tuple'>

一些你可能觉得奇怪的现象

>>> type(1)
<class 'int'>
>>> type((1))
<class 'int'>
>>> type(("hello"))
<class 'str'>

()在算数运算中表示优先运算,由于python解释器分不清你时要做数学优先级运算还是定义元组,所以,python做了个硬性的规定如果()里只有一个元素(后面没有,)则当作优先运算符

所以 type((1)) 等价于 type(1), 所以我们得到 <class 'int'>

那么我们想定义一个元素的元组,怎么办呢?

>>> type(()) # 空的元组
<class 'tuple'>
>>> type((1,)) # 1个元素的元组
<class 'tuple'>
>>> type([])
<class 'list'>
>>> type([1])
<class 'list'>

基础要打好,否则程序会产生一些bug

results matching ""

    No results matching ""