列表与元组
Python中的数据结构包括: 列表(List)、元组(Tuple)、字典(dict)、集合(set)和字符串(str)
列表
形如:[1,2,3,4,"string0",[1,2,"string1"]]
1.序列操作
(1)索引
- Python索引从0开始
- 索引为负数的时候,从左到右提取因素
>>>number=[1,,6,3,7,3,"string1"]
>>>number[0]
1
>>>number[-1]
'string1'
(2)切片
- 使用切片来访问特定范围内的元素(省略第一个参数则默认从0开始,切片后第二个参数指代的元素不包含在内)
- 如果第一个元素在第二个元素后面,结果为空
- 通过省略某一个索引,从右到左或从左到右取值到结尾或开头
- 省略两个索引可以复制整个序列(列表)
- 可以指定步长(步长为负数即从左到右取值)
>>>number=[1,6,3,7,3,"string1"]
>>>number[:3]
[1, 3, 'string1']
>>> number[2:1]
[]
>>> number[-3:0]
[]
>>> number[-3:]
[7, 3, 'string1']
>>> number[:]
[1, 6, 3, 7, 3, 'string1']
>>> number[::2]
[1, 3, 3]
(3)相加、相乘、成员资格
>>> [1,2,3]+[4,5,6]
[1, 2, 3, 4, 5, 6]
>>> [1]*5
[1, 1, 1, 1, 1]
>>> [None]*3
[None, None, None]
>>> number=[1,6,3,7,3,"string1"]
>>> 1 in number
True
>>> 2 in number
False
2.列表相关方法
方法 | 描述 |
---|---|
list() | 转化为列表 |
del list1[1] | 删除列表元素 |
list1.append(值) | 将括号内对象添加到列表末尾(直接修改旧列表) |
list1.clear() | 清空列表内容 |
list1.copy() | 复制列表,相当于list1[:] |
list1.count(值) | 计算括号内元素在列表中出现的次数 |
list1.extend(列表) | 同时将多个值添加到列表末尾(括号内可以是一个列表) |
list1.index(值) | 查找括号内的值第一次在列表中出现的索引(不存在则产生异常) |
list1,insert(索引,值) | 插入值 |
list1.pop(索引) | 从列表中删除指定索引的值并返回该值(不填写则默认为最后一个元素) |
list1.remove(值) | 删除指定值的第一个元素,不返回值 |
list1.reverse() | 按相反的顺序排列元素 |
list1.sort() | 按从小到大的顺序排列(函数是sorted(lsit1)) |
元组
1.形式与创建
- 将一些值用逗号分隔;或用圆括号括起
- 空元组用不包含内容的圆括号表示
- 只包含一个值的元组需要在值后面加上逗号
>>> 1,2,3
(1, 2, 3)
>>> (1,2,3)
(1, 2, 3)
>>> (43)
43
>>> (43,)
(43,)
2.序列操作与元组方法
除了修改的方法外,其余操作与方法与列表相同
列表与元组
- 列表可以修改,而元组不可以修改。(列表可以添加、删除元素)
- 序列(列表,元组,字符串等)都具有索引、切片、相加、相乘和成员资格检查的操作