list 列表
list这种数据类型可以存放多个数据。
比如要存放整个班级中所有同学的姓名,可以存放在list列表中;
names = ["小明","张三","李四"]
list 索引
比如访问list中的数据,索引 0 表示第一条;
names = ["小明","张三","李四","小王","小花"]print(names[0])print(names[1])# 访问最后一个数据print(names[-1])print(names[-2])
小明张三小花小王
list 切片
可以指定访问的数据范围
- [1:3] 1表示第2个, 3表示第4个, 包含2,不包含4 ```sql names = [“小明”,”张三”,”李四”,”小王”,”小花”]
print(names[1:3]) # 前包 不后不包 1, 3 都是索引 [‘张三’, ‘李四’]
print(names[1:-1]) # [‘张三’, ‘李四’, ‘小王’]
print(names[0:-1]) # [‘小明’, ‘张三’, ‘李四’, ‘小王’]
print(names[1:]) # 第二个不写 就表示到最后一个。 [‘张三’, ‘李四’, ‘小王’, ‘小花’]
print(names[:3]) # [‘小明’, ‘张三’, ‘李四’] names[0:3]
<a name="oQtZf"></a>## list 步长切片在取值的时候,默认顺序只能是从左往右。<br />切片的局限:```sqlprint(names[-1:-5]) # []
[1:5:2]
- 1 开始的索引位置
- 5 结束的索引位置
- 2 每次跳2个位置。
当最后一个值为 负数的时候,查找顺序为print(names[1:5:2]) # ['张三', '小王']
从右向左```sql
names = [“小明”,”张三”,”李四”,”小王”,”小花”] print(names[-1:-5:-1]) # [‘小花’, ‘小王’, ‘李四’, ‘张三’]
```sqlnames = ["小明","张三","李四","小王","小花"]print(names[::2]) # ['小明', '李四', '小花']print(names[::-1]) # ['小花', '小王', '李四', '张三', '小明']
内置方法
排序 sort
ages = [10,20,60,90,100,45,23,54,13]# 将 ages list 中的数据 按照从大到小进行排序# sort 默认是从小到大进行排序ages.sort()print(ages) # [10, 13, 20, 23, 45, 54, 60, 90, 100]ages.sort(reverse=True) # 从大到小print(ages) # [100, 90, 60, 54, 45, 23, 20, 13, 10]
增删改查
names = ["小明","张三","李四","小王","小花"]names.append('王小') # 添加一条记录 默认添加在最后print(names) # ['小明', '张三', '李四', '小王', '小花', '王小']names.insert(0,"小红") # 在索引为0的位置添加 小红print(names) # ['小红', '小明', '张三', '李四', '小王', '小花', '王小']# 将第一个姓名改为 小张names[0] = "小张"print(names) # ['小张', '小明', '张三', '李四', '小王', '小花', '王小']# 删除names.pop() # 默认删除最后一个print(names) # ['小张', '小明', '张三', '李四', '小王', '小花']# 指定删除位置names.pop(1)print(names) # ['小张', '张三', '李四', '小王', '小花']names.remove("张三") # 指定对应的值进行删除print(names) # ['小张', '李四', '小王', '小花']names.clear() # 清空print(names) # []
面试题
下面给定一组数据,请将数据顺序按从后到前输出出来;
names= ["azhang","sssd","dddsa","xxxxx"]
print(names[::-1])
将上面的数据按照降序排序(英文字符);
names.sort(reverse=True)print(names)
