小学课后服务 Python少儿编程 提高篇:4-列表与字典 课件 (20张PPT)

资源下载
  1. 二一教育资源

小学课后服务 Python少儿编程 提高篇:4-列表与字典 课件 (20张PPT)

资源简介

(共20张PPT)
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
少儿编程课
列表与字典
列表list
list,列表。是一种有序的数据集合
1
以《小黑大冒险》中小黑的技能为例:如果想给小黑添加一个技能,可以这样做:
skill = '一墨横空
2
而如果想添加多个技能,可以这样:
此时skill的数据类型是String
skill1 = '一墨横空'
skill2 = '墨渡迷津'
skill3 = '墨之纵横'
skill4 = '墨下乾坤'
按照这个思路,如果学校有1000个学生,那么想表示每个学生的成绩就要定义1000个变量

score001
score002
score003
score004
… …
score999
score1000
此时如果想对全校学生做一个成绩的判断,我们可能需要这样写代码:
score001 = 98
score002 = 89
score003 = 86
score004 = 72
# 此处省略其他学生分数的定义
score999 = 91
score1000 = 88
if score001 >= 60:
print('及格')
if score002 >= 60:
print('及格')
if score003 >= 60:
print('及格')
if score004 >= 60:
print('及格')
# 此处省略其他学生分数的判断
if score999 >= 60:
print('及格')
if score1000 >= 60:
print('及格')
这样太麻烦了!为了能统一处理数据,Python中加入了list等数据类型
1
使用list来表示小黑的四个技能是这样的:
list_skills = ['一墨横空', '墨渡迷津', '墨之纵横', '墨下乾坤']
2
使用list来表示1000个学生的成绩是这样的:
list_scores = [98, 89, 78, 97, 96, 75, …,79, 99, 82, 81, 84, 86]
定义好list之后,我们再来了解几个list中的基本概念
1
list用来表示很多数据,它就像一个小火车一样,每个数据就是一节车厢,称为list的元素
元素
2
每个元素都有对应的编号,称为元素的下标,下标从0开始,依次为0,1,2,3,…
0
1
2
3
有了下标之后,结合循环我们就能对整个list的所有数据做统一处理
1
比如将小黑的所有技能输出显示
2
比如判断全校所有学生的分数
list_skills = ['一墨横空', '墨渡迷津', '墨之纵横', '墨下乾坤']
for i in range(4):
print(list_skills[i])
list_scores = [98, 89, 78, 97, 96, 75, 79,…, 99, 82, 81, 84, 86]
for i in range(1000):
if list_scores[i] >= 60:
print('及格')
当然,在使用下标时还需要注意下标的取值范围
比如将小黑的所有技能输出显示案例中的range(4)改为range(5)
list_skills = ['一墨横空', '墨渡迷津', '墨之纵横', '墨下乾坤']
for i in range(5):
print(list_skills[i])
一墨横空
墨渡迷津
墨之纵横
墨下乾坤
Traceback (most recent call last):
File "C:/Users/chenjun/PycharmProjects/my_game/ppt/day09/list_test.py", line 3, in
print(list_skills[i])
IndexError: list index out of range
1
则会报下面的错误:list的下标越界了
2
可以使用len()函数,自动获取list的长度作为range的参数。
3
list的其他功能
list除了能借助下标把所有的元素取出外,还有其他的常用功能:
增加
1
插入
2
list_skills = ['一墨横空', '墨渡迷津', '墨之纵横', '墨下乾坤']
list_skills.append('唯墨独黑')
输出结果:['一墨横空', '墨渡迷津', '墨之纵横', '墨下乾坤', '唯墨独黑']
list_skills = ['一墨横空', '墨渡迷津', '墨之纵横', '墨下乾坤']
list_skills.insert(1, '唯墨独黑')
输出结果:['一墨横空', '唯墨独黑', '墨渡迷津', '墨之纵横', '墨下乾坤']
删除最后一个元素
3
list_skills = ['一墨横空', '墨渡迷津', '墨之纵横', '墨下乾坤']
list_skills.pop()
输出结果:['一墨横空', '墨渡迷津', '墨之纵横']
list除了能借助下标把所有的元素取出外,还有其他的常用功能:
删除指定位置上的元素
4
修改
5
输出结果:['一墨横空', '墨渡迷津', '墨下乾坤']
list_skills = ['一墨横空', '墨渡迷津', '墨之纵横', '墨下乾坤']
list_skills.pop(2)
输出结果:['唯墨独黑', '墨渡迷津', '墨之纵横', '墨下乾坤']
list_skills = ['一墨横空', '墨渡迷津', '墨之纵横', '墨下乾坤']
list_skills[0] = '唯墨独黑'
字典dict

字典和列表功能上类似,都用于存储多个数据。下面我们来看一个dict的定义:
book_author_dict = {
'朝花夕拾': '鲁迅',
'繁星春水': '冰心',
'骆驼祥子': '老舍',
'西游记': '吴承恩',
'水浒传': '施耐庵',
'三国演义': '罗贯中'
}
用dict定义名著和作者的关系是这样的:
1
Key(键)
value(值)
也即是说dict由多个键值对组成
2
键值对
字典名称= {
键1:值1,
键2:值2,
键3:值3,
键4:值4,
键5:值5,
… …
键n:值n,
}
接下来我们看看dict提供给了我们哪些用法,以上面定义的名著和作者dict为例
根据key查找value
1
print(book_author_dict['朝花夕拾'])
输出结果:鲁迅
查找全部的key
2
输出结果:
朝花夕拾
繁星春水
骆驼祥子
西游记
水浒传
三国演义
for book in book_author_dict:
print(book)
查找全部的key和value
3
for book, author in book_author_dict.items():
print('著作:%s,作者:%s' % (book, author))
输出结果:
著作:朝花夕拾,作者:鲁迅
著作:繁星春水,作者:冰心
著作:骆驼祥子,作者:老舍
著作:西游记,作者:吴承恩
著作:水浒传,作者:施耐庵
著作:三国演义,作者:罗贯中
另外就是dict的添加、删除和修改功能
添加
1
修改
2
删除
3
book_author_dict['红楼梦'] = '曹雪芹'
print(book_author_dict)
输出结果:
{'朝花夕拾': '鲁迅', '繁星春水': '冰心', '骆驼祥子': '老舍', '西游记': '吴承恩', '水浒传': '施耐庵', '三国演义': '罗贯中', '红楼梦': '曹雪芹'}
book_author_dict[‘朝花夕拾’] = ‘周树人'
print(book_author_dict)
输出结果:
{'朝花夕拾': '周树人', '繁星春水': '冰心', '骆驼祥子': '老舍', '西游记': '吴承恩', '水浒传': '施耐庵', '三国演义': '罗贯中'}
book_author_dict.pop('骆驼祥子')
print(book_author_dict)
输出结果:
{'朝花夕拾': '鲁迅', '繁星春水': '冰心', '西游记': '吴承恩', '水浒传': '施耐庵', '三国演义': '罗贯中'}
总结
Summary
list的格式,元素和下标,list中的增、插入、删、改、查等方法

dict的格式,key和value,dict中的增、删、改、查等方法

作业
Homework
使用上面的数据,查找“冰心”的著作是什么
# 图书和作者的字典
book_author_dict = {
'朝花夕拾': '鲁迅',
'繁星春水': '冰心',
'骆驼祥子': '老舍',
'西游记': '吴承恩',
'水浒传': '施耐庵',
'三国演义': '罗贯中'
}
# 定义一个空的字典,
author_book_dict = {}
# 交换key和value组成新的字典
for book, author in book_author_dict.items():
author_book_dict[author] = book
# 查找冰心的著作名称
print(author_book_dict['冰心'])
Thanks!

展开更多......

收起↑

资源预览