列表与字典
2020-04-20 23:04:26 0 举报
AI智能生成
python【字典与列表】知识点
作者其他创作
大纲/内容
列表(list)
列表的格式
students = ['小明','小红','小刚']
从列表提取单个元素
偏移量(始终是从0开始的)
取到的是列表中的元素
取到的是列表中的元素
students = ['小明','小红','小刚']
print(students[0])
print(students[0])
小明
从列表提取多个元素
切片(:)
口诀:左右空,取到头;左要取,右不取。
口诀:左右空,取到头;左要取,右不取。
冒号左边空,就要从偏移量为0的元素开始取;
右边空,就要取到列表的最后一个元素。
冒号左边数字对应的元素要拿,右边的不动
取到的仍是列表
右边空,就要取到列表的最后一个元素。
冒号左边数字对应的元素要拿,右边的不动
取到的仍是列表
list2 = [5,6,7,8,9]
print(list2[:])
print(list2[2:])
print(list2[:2])
print(list2[1:3])
print(list2[2:4])
print(list2[:])
print(list2[2:])
print(list2[:2])
print(list2[1:3])
print(list2[2:4])
[5,6,7,8,9]
[7,8,9]
[5,6]
[6,7]
[7,8]
[7,8,9]
[5,6]
[6,7]
[7,8]
给列表增加or删除元素
.append()每次只能增加一个元素
(单个列表也视作一个元素)
(单个列表也视作一个元素)
students = ['小明','小红','小刚']
students.append('小美')
print(students)
students.append('小美')
print(students)
del既能删除一个元素,也能一次删除多个
students = ['小明','小红','小刚','小美']
del students[1]
print(students)
del students[1]
print(students)
字典(score)
字典的格式
scores = {'小明':95,'小红':90,'小刚':90}
键值对
以冒号连接
以冒号连接
'小明':95中,'小明'就是键,95就是值
字典中的键具备唯一性,而值可重复
字典中的键具备唯一性,而值可重复
从字典中提取元素
字典的索引,靠的是键。
scores = {'小明': 95, '小红': 90, '小刚': 90}
print(scores['小明'])
print(scores['小明'])
95
给字典增加/删除元素
删除字典里键值对的代码是del语句:del 字典名[键]
删除案例:del scores['小刚']
新增键值对要用到赋值语句:字典名[键] = 值
增加案例:scores['小美']=92
字典和列表的3个共同点:
1.有名称
2.要用=赋值
3.用逗号作为元素间的分隔符
1.有名称
2.要用=赋值
3.用逗号作为元素间的分隔符
列表和字典的异同
【相同点】
1.如果要修改元素,都可用赋值语句来完成。
2.支持任意嵌套
1.如果要修改元素,都可用赋值语句来完成。
2.支持任意嵌套
列表套列表
students = [['小明','小红','小刚','小美'],['小强','小兰','小伟','小芳']]
print(students[1][3])
students = [['小明','小红','小刚','小美'],['小强','小兰','小伟','小芳']]
print(students[1][3])
小芳
字典套字典
scores = {
'第一组':{'小明':95,'小红':90,'小刚':100,'小美':85},
'第二组':{'小强':99,'小兰':89,'小伟':93,'小芳':88}
}
print(scores['第二组']['小芳'])
'第一组':{'小明':95,'小红':90,'小刚':100,'小美':85},
'第二组':{'小强':99,'小兰':89,'小伟':93,'小芳':88}
}
print(scores['第二组']['小芳'])
88
列表与字典互套
# 最外层是大括号,所以是字典嵌套列表,
先找到字典的键对应的列表,
再判断列表中要取出元素的偏移量
先找到字典的键对应的列表,
再判断列表中要取出元素的偏移量
students = {
'第一组':['小明','小红','小刚','小美'],
'第二组':['小强','小兰','小伟','小芳']
}
print(students['第一组'][3])
#取出'第一组'对应列表偏移量为3的元素,即'小美'
'第一组':['小明','小红','小刚','小美'],
'第二组':['小强','小兰','小伟','小芳']
}
print(students['第一组'][3])
#取出'第一组'对应列表偏移量为3的元素,即'小美'
# 最外层是中括号,所以是列表嵌套字典,
先判断字典是列表的第几个元素,
再找出要取出的值相对应的键
先判断字典是列表的第几个元素,
再找出要取出的值相对应的键
scores = [
{'小明':95,'小红':90,'小刚':100,'小美':85},
{'小强':99,'小兰':89,'小伟':93,'小芳':88}
]
print(scores[1]['小强'])
#先定位到列表偏移量为1的元素,即第二个字典,
再取出字典里键为'小强'对应的值,即99。
{'小明':95,'小红':90,'小刚':100,'小美':85},
{'小强':99,'小兰':89,'小伟':93,'小芳':88}
]
print(scores[1]['小强'])
#先定位到列表偏移量为1的元素,即第二个字典,
再取出字典里键为'小强'对应的值,即99。
【不同点】
列表数据-有序→要用偏移量定位
字典数据-无序→便通过唯一的键来取值
列表数据-有序→要用偏移量定位
字典数据-无序→便通过唯一的键来取值
元素——[ ]里面的数据
每个元素都要用,隔开
每个元素都要用,隔开
append函数并不生成一个新列表,
而是让列表末尾新增一个元素。
而且,列表长度可变,
理论容量无限,
所以支持任意的嵌套。
而是让列表末尾新增一个元素。
而且,列表长度可变,
理论容量无限,
所以支持任意的嵌套。
值
键
拓展知识:元组(tuple)。
可以看到:元组和列表很相似,
不过,它是用小括号来包的。
元组和列表都是序列,
提取的方式也是偏移量,
如 tuple1[1]、tuple1[1:]。
另外,元组也支持任意的嵌套。
可以看到:元组和列表很相似,
不过,它是用小括号来包的。
元组和列表都是序列,
提取的方式也是偏移量,
如 tuple1[1]、tuple1[1:]。
另外,元组也支持任意的嵌套。
拓展知识:len()函数
可得出一个列表或者字典的长度(元素个数),
括号里放列表或字典名称。
可得出一个列表或者字典的长度(元素个数),
括号里放列表或字典名称。
收藏
0 条评论
下一页