列表、元组、字典、集合
一、列表
1.1 列表的表达
序列类型:内部元素有位置关系,能通过位置序号访问其中元素
列表是一个可以使用多种类型元素,支持元素的增、删、查、改操作的序列类型
ls = ["Python", 1989, True, {
"version": 3.7}]
ls
output:
[‘Python’, 1989, True, {‘version’: 3.7}]
另一种产生方式:list(可迭代对象)
可迭代对象包括:字符串、元组、集合、range()等
字符串转列表
list("人工智能是未来的趋势")
output:
[‘人’, ‘工’, ‘智’, ‘能’, ‘是’, ‘未’, ‘来’, ‘的’, ‘趋’, ‘势’]
元组转列表
list(("我", "们", "很", "像"))
output:
[‘我’, ‘们’, ‘很’, ‘像’]
集合转列表
list({
"李雷", "韩梅梅", "Jim", "Green"})
output:
[‘Green’, ‘Jim’, ‘李雷’, ‘韩梅梅’]
特殊的range()
for i in [0, 1, 2, 3, 4, 5]:
print(i)
output:
0
1
2
3
4
5
for i in range(6):
print(i)
output:
0
1
2
3
4
5
range(起始数字,中止数字,数字间隔)
如果起始数字缺省,默认为0
必须包含中止数字
数字间隔缺省,默认为1
for i in range(1, 11, 2):
print(i)
output:
1
3
5
7
9
range()转列表
list(range(1, 11, 2))
output:
[1, 3, 5, 7, 9]
1.2 列表的性质
列表的长度——len(列表)
ls = [1, 2, 3, 4, 5]
len(ls)
output:
5
列表的索引——与同为序列类型的字符串完全相同
变量名[位置编号]
正向索引从0开始
反向索引从-1开始
cars = ["BYD", "BMW", "AUDI", "TOYOTA"]
print(cars[0])
print(cars[-1])
output:
BYD
TOYOTA
列表的切片
变量名[开始位置:结束位置:切片间隔]
cars = ["BYD", "BMW", "AUDI", "TOYOTA"]
正向切片
print(cars[:3]) # 前三个元素,开始位置缺省,默认为0;切片间隔缺省,默认为1
output:
['BYD', 'BMW', 'AUDI']
print(cars[1:4:2]) # 第二个到第四个元素 前后索引差为2
output:
['BMW', 'TOYOTA']
print(cars[:]) # 获取整个列表,结束位置缺省,默认取值到最后
output:
['BYD', 'BMW', 'AUDI', 'TOYOTA']
print(cars[-4:-2]) # 获取前两个元素
output:
['BYD', 'BMW']
反向切片
cars = ["BYD", "BMW", "AUDI", "TOYOTA"]
print</