什么是序列?
序列是python中最基本的数据结构。
m=1,m是一个变量,值为1
n=[1,3,4,8,9,7],n则是一个序列(可变序列列表)后文我会和大家解释什么是可变序列,不可变序列以及二者的区别)
序列的类型可以分为三类:列表List、元祖tuple、文本序列(字符串)str,今天我们先介绍前两种。
可变序列—列表List
n=[1,3,4,8,9,7]是一个列表它的第、1、2、3、4、5位分别指代1、3、4、8、9、7这几个数,这是与变量m=1只指代1的最大不同。
x=[9,8,6,5,1,2]
列表用“[]”来表示,用“,”来分隔每一个元素
“[]”中可包含任意数值类型包括整型、浮点型、字符串甚至包括列表、元祖。
可通过下标索引访问序列中的值
33.4
“我很帅”
[3,8,41.0]
可随意变换列表长度(这是可变序列的可变之一)
我们用x.append()来增加元素,用x.remove()来减少元素。
可原位改变(这是可变序列的可变之二)
>>>x[0]=88
[88, [3, 8, 41.0], 1, "你很漂亮"]
>>>x[3]=27.1
[88, [3, 8, 41.0], 1, 27.1]
相对于可变序列的不可变序列—元祖tuple
x=(3.2,2,6,[89,67,3.2],"哈哈哈",("你好啊",6,5,89))
元祖用“()”来表示,用“,”来分隔每一个元素。
“()”中可包含任意数值类型包括整型、浮点型、字符串甚至包括列表、元祖。
可通过下标索引访问序列中的值
这里需要注意的是,虽然这是元祖tuple,但是我们在做索引的时候还是用“x=[]”来进行索引而不是“x=()”
元祖中可嵌套其他元祖
申明元祖时可不加()
>>> x=1,3,45,62,33.1,0
(1, 3, 45, 62, 33.1, 0)
>>> type(x)
我们已经用type()函数验证了x确实是个元祖
不可原位改变、不可改变元祖长度
>>> x=1,3,45,62,33.1,0
(1, 3, 45, 62, 33.1, 0)
>>> type(x)
>>> x[0]=99
Traceback (most recent call last):
File "
", line 1, in
x[0]=99
TypeError: 'tuple' object does not support item assignment
>>> x[2]=31.2
Traceback (most recent call last):
File "
", line 1, in
x[2]=31.2
TypeError: 'tuple' object does not support item assignment
>>> x.append("你好")
Traceback (most recent call last):
File "
", line 1, in
x.append("你好")
AttributeError: 'tuple' object has no attribute 'append'
>>> x.append(21)
Traceback (most recent call last):
File "
", line 1, in
x.append(21)
AttributeError: 'tuple' object has no attribute 'append'
领取专属 10元无门槛券
私享最新 技术干货