![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/76b6fd66564d42bca26bdb3518e11163.png)
一、列表list创建及特性
1.1 、 列表
Python中列表是一个“大容器"可以存储N多个元素,程序可以方便地对这些数据进行整体操作,列表相当于其它语言中的数组Array。
列表 是python中使用最频繁的数据类型。列表是内置有序、可变序列。
列表需要使用英文括号"[ ]
",元素之间使用英文的逗号“,
”,进行分隔。
多维列表:列表中可以嵌套列表,形成多维列表。
序号 | 列表维数 | 简写 | 说明 |
---|---|---|---|
1 | 一维列表 | [,] | |
2 | 二维列表 | [ [,] , [,] …[,]] | 二维列表的元素值 ,是一维列表 |
3 | n多维列表 | [ [ [,]… ], [ [,] …] ,…[ [,]…] ] | n维列表的元素值,是n-1维列表 |
1.2 、列表的特点:
序列 | 列表特点 |
---|---|
1 . 有序 | 列表元素 .按顺序有序排序 |
2. 索引唯一 | 索引映射唯一个数据 |
3. 重复性 | 列表可以存储重复数据 |
4. 任意类型 | 任意数据类型混存 |
5 . 动态 | 根据需要动态分配和回收内存 |
1.3 创建列表常用方法
序号 | 列表方法 | 说明 |
---|---|---|
1 | [] |
创建空列表[] |
2 | [,] |
创建非空列表 |
3 | range(,) |
区间转化为列表 |
4 | list() |
其他类型对象强转为列表 |
举例1:用不同方法 创建列表
代码:
#定义空列表[]
lst = []
lst = list()
print("[]定义空列表:",lst)
#非空[,,]
lst = [1,2,3,4]
lst = [1,'a',['a'],{
1}]
print("[,,]定义非空列表:",lst)
#range区间
lst = list(range(1,8)) #1,2...7
print('range区间定义列表:',lst)
##list 强转为列表
#tuple -> list
lst1 = list('abcd') #str->list
lst2 = list((1,2,3)) #tuple() -> list[]
print('list转化列表:',lst1,lst2)
运行结果:
[]定义空列表: []
[,,]定义非空列表: [1, 'a', ['a'], {
1}]
range区间定义列表: [1, 2, 3, 4, 5, 6, 7]
list转化列表: ['a', 'b', 'c', 'd'] [1, 2, 3]
二、列表list元素的访问(索引、切片)
列表元素的访问/赋值:列表可以通过索引(下标),及切片(步长)的方式进行元素值的访问,或者元素赋值。列表的切片取值是从原列表中取出想要的元素再次组成一个新的列表。
常规格式:
列表
[
开始索引:
结束索引:
步长]
个人理解格式:
列表
[
头标:
尾标: ±
间隔]
举例1:通过索引切片方式访问 列表中元素
代码:
#列表的访问
# 0 1 2 3 4 5
lst = ['a','b','c','d','e','f']
# -6 5 -4 -3 -2 -1
#访问全部元素
print('----访问全部元素---')
print(lst[:])
print(lst[::])
print(lst[0:])
print(lst[-6:]) # <-len
print(lst[::1]) # 正向
print(lst[::-1]) # 反向
# 截取部分元素(通过索引和步长)
#正向截取bcd +间隔 ; 头标左起 尾标右止
# 头1/-5 -->尾 4/-2
print('----正向截取bcd---')
print(lst[1:4]) #默认 +1省略
print(lst[1:-2])
print(lst[-5:-2:1]) # +1可以不省略
print(lst[-5:4:1])
#反向截取dcb -间隔 ; -1 不可以省略
# 头3/-3 -->尾 0/-6
print('----反向截取bcd---')
print(lst[3:0:-1])
print(lst[3:-6:-1])
print(lst[-3:0:-1])
print(lst[-3:-6:-1])
运行结果:
----访问全部元素---
['a', 'b', 'c',