Python list()内置函数 --返回一个列表对象

内置函数 list() 将一个其它数据类型转变为列表,列表是一个可变序列

创建列表的方式

方括号

1
2
# 以英文逗号分隔
list = ['a', 'b', 'c']

列表推导式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
a = 'abc'                       # 字符串
b = ['a', 'b', 'c'] # 列表
c = ('a', 'b', 'c') # 元组
d = {'a': 0, 'b': 1, 'c': 2} # 字典

print([x for x in a])
print([x for x in b])
print([x for x in c])

# 取出字典的键 'a' 'b' 'c' 创建列表
print([key for key, value in d.items()])
# 取出字典的值 0 1 2 创建列表
print([value for key, value in d.items()])
# range(4) 等价于 [0, 1, 2, 3]
print([x for x in range(4)])

'''输出
['a', 'b', 'c']
['a', 'b', 'c']
['a', 'b', 'c']
['a', 'b', 'c']
[0, 1, 2]
[0, 1, 2, 3]
'''

类型构造器list()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
a = 'abc'                       # 字符串
b = ['a', 'b', 'c'] # 列表
c = ('a', 'b', 'c') # 元组
d = {'a': 0, 'b': 1, 'c': 2} # 字典

print(list()) # 不输入参数创建空列表
print(list(a))
print(list(b))
print(list(c))
print(list(d)) # 取出字典中的键创建列表

'''输出
[]
['a', 'b', 'c']
['a', 'b', 'c']
['a', 'b', 'c']
['a', 'b', 'c']
'''

列表操作

列表 中的每个 元素 都是有序排列,且有独一无二的编号—— 偏移量

偏移量0 开始而非 1

提取某个元素

语法: 列表名[偏移量]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
list = [
'君问归期未有期',
'巴山夜雨涨秋池',
'何当共剪西窗烛',
'却话巴山夜雨时'
]

print(list[0])
print(list[1])
print(list[2])
print(list[3])

'''输出
君问归期未有期
巴山夜雨涨秋池
何当共剪西窗烛
却话巴山夜雨时
'''

替换某个元素

语法:列表名[偏移量] = 值

1
2
3
4
5
6
7
8
9
10
11
12
13
list = [
'君问归期未有期',
'巴山夜雨涨秋池',
'何当共剪西窗烛',
'却话巴山夜雨时'
]

list[0] = '雨园'
print(list)

'''输出
['雨园', '巴山夜雨涨秋池', '何当共剪西窗烛', '却话巴山夜雨时']
'''

提取多个元素

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
list = [
'君问归期未有期',
'巴山夜雨涨秋池',
'何当共剪西窗烛',
'却话巴山夜雨时'
]

# 提取所有元素
print(list[:])
# 从第一个元素开始提取右边所有元素
print(list[1:])
# 从第0个元素提取到第一个元素(不含)
print(list[:1])
# 从第一个元素提取到第三个元素(不含)
print(list[1:3])

'''输出
['君问归期未有期', '巴山夜雨涨秋池', '何当共剪西窗烛', '却话巴山夜雨时']
['巴山夜雨涨秋池', '何当共剪西窗烛', '却话巴山夜雨时']
['君问归期未有期']
['巴山夜雨涨秋池', '何当共剪西窗烛']
'''

上列截取列表元素的操作叫作 切片 ,得到的还是一个 列表
切片口诀: 左右空,取到头;左要取,右不取

冒号左边空,就要从偏移量为0的元素开始取;右边空,就要取到列表的最后一个元素
冒号左边数字对应的元素要拿,右边的不拿

列表嵌套列表

提取 亥猪

1
2
3
4
5
6
7
8
9
10
list = [
['子鼠', '丑牛', '寅虎', '卯兔', '辰龙', '巳蛇'],
['午马', '未羊', '申猴', '酉鸡', '戌狗', '亥猪']
]

print(list[1][5])

'''输出
亥猪
'''

先提取列表偏移量为 1 的元素,即第二个列表, 再取出列表里偏移量为 5 的元素,即 亥猪

列表嵌套字典

提取化学成绩

1
2
3
4
5
6
7
8
9
10
list = [
{'语文': 85, '数学': 80, '英语': 15},
{'物理': 90, '化学': 75, '生物': 89}
]

print(list[1]['化学'])

'''输出
75
'''

先提取列表偏移量为 1 的元素,即第二个字典,再取出字典里键为 化学 对应的值,即 75

字典嵌套列表

提取 亥猪

1
2
3
4
5
6
7
8
9
10
dict = {
'a': ['子鼠', '丑牛', '寅虎', '卯兔', '辰龙', '巳蛇'],
'b': ['午马', '未羊', '申猴', '酉鸡', '戌狗', '亥猪']
}

print(dict['b'][5])

'''输出
亥猪
'''

先提取字典里键为 b 的值,即第二个列表,再取出列表里偏移量为 5 的元素,即 亥猪