内容正文:
情景二 控制程序的结构
任务
mission
1
2
3
4
用户信息的保存
有趣的随机数
流程控制
学生信息管理系统
2
任务一 用户信息的保存
一.列表的创建、访问和操作方法
1.列表的创建
列表(list)是Python的一种内建结构数据类型。把所有元素放在一对“[ 中括号 ]”内,以“,” 进行分隔,同一个列表中的元素可以是不同的类型。列表是一种可变序列类型,可以进行增加、修改、删除元素等操作。
>>> x=[1,2,3,4]
>>> type(x)
<class 'list'>
>>> y=[1,'a','python',9.9]
>>> type(y)
<class 'list'>
4
一. 列表的创建、访问和操作方法
2.列表的访问
使用下标索引来访问列表中的值,从左往右以0开始依次增加,也可以从右往左以-1开始依次减小,如下图所示。
>>> y
[1, 'a', 'python', 9.9]
>>> y[0]
1
>>> y[0:3]
[1, 'a', 'python']
一. 列表的创建、访问和操作方法
3.列表的常用操作方法
使用方法是:列表名.具体方法=实现具体功能,列表常用操作方法如下表所示。
序号 方法 分类 功能描述
1 列表.append(object) 增加 在列表的尾部追加元素
2 列表.insert( index , object) 在列表的某个位置插入一个元素
3 列表1.extend( 列表2 ) 在列表2扩充到列表1后
4 列表.remove(value) 删除 删除列表中指定的第一个元素
5 列表.pop(index) 删除指定索引的元素,省略则指列表尾部
6 列表.clear( ) 清空列表中的所有元素
7 列表[index] = object 修改 修改列表指定索引的元素
8 列表.index(value) 查询 返回某元素在列表中的位置,未找到则报错
9 列表.count(value) 统计 返回列表中某元素出现的次数
10 列表.sort(reverse=False) 排序 将列表中的元素默认按升序排序
11 列表.reverse( ) 将列表中元素的顺序颠倒
二.元组的创建、访问和操作方法
1.元组的创建
元组是Python的一种内建结构数据类型。把所有元素放在一对“( )”内,以“,”进行分隔,同一个元组中的元素可以是不同的类型。元组属于不可变序列,一旦创建,不可以修改、删除元素操作。
>>> tu=()
>>> type(tu)
<class 'tuple'>
>>> x=(1,2,3,4)
>>> type(x)
<class 'tuple'>
>>> y=(1, 'a', 'python', 9.9)
>>> type(y)
<class 'tuple'>
7
二. 元组的创建、访问和操作方法
2.访问元组中的值
使同列表一样,使用下标索引来访元组中的值,从左往右以0开始依次增加,也可以从右往左以-1开始依次减小,刚才我们已经声明了一个元组y,访问元组中的值操作代码如下。
>>> y
(1, 'a', 'python', 9.9)
>>> y[0]
1
>>> y[-1]
9.9
>>> y[1:3]
二.元组的创建、访问和操作方法
3.元组的操作方法
元组只有两个操作方式,分别是index和count,功能描述如下表所示。
序号 方法 功能描述
1 tuple.index(value,[start[,stop]]) 返回某元素在元组中的位置
2 tuple.count(value) 返回元组中某元素出现的次数
三.字典的创建、访问和操作方法
1.字典的创建
字典是Python的一种内建结构数据类型。每个元素都是:“键:值”对形式存在。用“{ }”将所有元素括起来,各元素之间用“,” 进行分隔。字典与列表和元组主要的不是同:字典是无序的,其元素的访问通过“键”实现,而不是通过元素的位置,并且要求字典中”键”不能重复。
>>> d1={}
>>> type(d1)
<class 'dict'>
>>> d2={'python':1,'c':2,'java':3}
>>> type(d2)
<class 'dict'>
10
三.字典的创建、访问和操作方法
2.访问字典中的值
使在列表的学习中,掌握了列表是通过下标索引进行访问,那字典的访问形式和列表一下吗?我们提前声明字典d3,尝试访问第一个元素,在集成环境中输入d3[0]回车,返回错误信息,说明字典不支持下标索引的方式来访问。访问字典中的值是通过“键”来访问的,并且键是不变的。如果要访问第一个元素的值,应该通过第一个元素的键来访问,操作代码如下。
>>> d3
{'name': '张三', 'age': 19, 'gender': 'male'}
>>> d3[0]
Traceback (most recent call last):
File "<pyshell#62>", line 1, in <module>
d3[0]
KeyError: 0
>>> d3['name']
'张三'
三.字典的创建、访问和操作方法
3. 字典的操作方法
Python提供了丰富的内置方法来有效操作字典,常用操作方法如下表所示。
序号 方法 功能描述
1 dict.clear() 清空字典
2 dict.copy() 复制字典
3 dict.get(k,[default]) 获得k(键)对应的值,不存在不报错
4 dict.items() 获得由键和值组成元组做为元素的列表
5 dict.keys() 获得键的迭代器
6 dict.pop(k[,d]) 删除k(键)对应的”键:值”对
7 dict.update(adict) 从另一个字典更新字典元素的值,如不存在,则添加此元素
8 dict.values() 获得值的迭代器
9 dict.fromkeys(iter,value) 以列表或元组中给定的键建立字典,默认值为value
四. 用户信息的保存
因为列表可以对数据进行增、删、修、查、统计和排序操作,所以首先建立一个空的列表用于保存用户的信息;但是我们并不知道需要保存的具体用户个数,所以使用一个while无限循环来录入用户信息,将录入的用户信息以键值对的方式保存到一个字典当中;再使用列表append方法将字典追加到列表中;最后提示用户信息保存成功,参考代码和运行效果图如下所示。
三. 任务一 小结
通过本次任务的学习和实践,使我们熟悉了Python常用数据类型和内建结构数据类型,并且能够熟练地掌握列表、元组、字典的创建、访问和常用操作方法的实践操作。
要保存多个用户的不同个人信息,可以首先建立一个空的列表备用,再逐一将不同用户的详细信息收集起来以键值对的方式保存到字典当中,最后使用列表append方法将字典追加到列表中保存即可。当然,上述方法是暂时的,待同学们学习了文件或数据库的操作以后,建议将重要信息保存到文件或数据库中。
14
任务二 流程控制
一. 分支结构程序设计
1. 单分支语句
if 表达式:
语句块
当表达式的值为True或者其它等价值时(非空非零),表示条件满足,则语句块将被执行,否则该语句块不被执行。表达式后用英文的冒号(:)结束,回车换行Python会自动缩进四个空格。 接下来我们看一下实例,从键盘输入成绩,如果成绩大于等于60分则显示及格。
score = float(input("请输入成绩:"))
if score >=60:
print("及格")
16
一. 分支结构程序设计
1. 双分支语句
if 表达式:
语句块A
else:
语句块B
当表达式的值为True或者其它等价值时(非空非零),执行语句块A,否则执行语句块B。
也就是说:双分支语句执行时,只会选择一个分支执行。
拓展单分支语句的功能,如果输入成绩大于等于60分则显示及格,否则显示不及格。
score = float(input("请输入成绩:"))
if score >=60:
print("及格")
else:
print("不及格")
17
二. 输出
2. 使用字符串模运算符(%)格式化输出
Python 支持格式化字符串的输出 ,%运算符通常被称为字符串取模运算符,可用于字符串格式化,最基本的用法是将一个值插入到一个有字符串格式符 %x 的字符串中
3.使用 format 方法格式化输出
在字符串中把需要输出的变量值用{}来代替,然后用format()来修改使之成为想要的字符串,默认情况下按照从左往右的顺序自动进行替换;但也可以在大括号中写入序号让替换的值根据位置而改变;同时还可以使用关键字来实现一一对应的赋值替换,其中数字的精度通过在大括号前加冒号,格式为 {:.x f} 如果x为整数则没有意义。
18
三. 任务二 小结
通过本次任务的学习和实践,掌握了PyCharm的下载安装与使用、输入与输出函数的使用方法。并且能够熟练地使用输入函数完成信息的录入以及数据类型的转换、使用输出函数进行格式化输出。同时理解在程序编写过程中代码规范的目的和意义,不仅仅可以增加程序的可读性和可维护性,更重要的是可以促进团队合作、降低维护成本、有助于程序员自身的成长。
19
任务三 第三方库的安装
一.第三方库的安装
1.通过PyCharm安装第三方库
双击桌面“PyCharm Community Edition”快捷方式打开项目,单击“File”——“Settings”,在打开的对话框中单击“Project:xx”左边的小箭头符号(xx是新建的项目名称)——再单击“Python Interpreter”。此时可以看到已经安装成功的第三方库以及版本,如下图所示。
21
一.第三方库的安装
1.通过PyCharm安装第三方库
安装第三方库单击对话框右侧的“+”号,在弹出的“Available Packages”对话框中,左上方搜索栏中输入你要安装的第三方库名PyCharm会自动搜索输入的库名,此时左侧显示与该库名类似的第三方库;选中需要安装的第三方库后单击“Install Package”开始自动安装。
22
一. 第三方库的安装
2. 通过pip命令安装第三方库
首先使用组合键 “Win+R”打开运行窗口,输入“cmd”,打开命令提示符窗口,在窗口中输入
“pip list”查看已安装的包,如果出现了WARNING提示,说明pip版本需要更新,按右图所示将更新命令输入后回车确认即可完成更新。
23
一. 第三方库的安装
2. 通过pip命令安装第三方库
将pip更新以后,使用“pip install 第三方库的名”就可以自动下载并安装第三方库国。如果在命令行末尾看到有“Successfully installed”信息即安装成功,想要卸载已经安装过的第三方库使用“pip uninstall库名”即可卸载。
24
三. 任务三 小结
通过本次任务的学习和实践,我们了解了第三方库重要的意义、常用第三方库的名称和功能、Python官方第三方库的地址和国内镜像链接,能够独立通过PyCharm、pip命令安装第三方库,同时还掌握了第三方库的查询、更新和卸载的方法。强大的标准库奠定了python发展的基石,而不断丰富和扩展的第三方库则是python的魅力所在,目前第三方库已有几十万种,很多第三方库不仅功能强大而且还十分健壮,值得我们借鉴和学习。这正如牛顿所说:“如果说我比别人看得更远些,那是因为我站在了巨人的肩上”。
25
任务四 人机交互
一. 人机交互
1.输入数字后进行四则运算
在Python3.x中input函数默认接收到的数据为字符串型,如果将两个字符串类型相加实则完成字符串连接的功能,而非真正的相加。所以需要将字符串型转为浮点型后,再进行数值之间的相加,源代码和运行结果如下图所示。
27
一. 人机交互
2.输入用户信息后格式化输出
将用户名、密码、姓名、性别、年龄等信息的录入后,再将录入后不同的信息分别保存到不同的变量中。在字符串中把需要输出的变量值用{}来代替,然后用format()来修改使之成为想要的字符串,源代码和运行结果如下图所示。
28
三. 任务四 小结
通过本次任务的学习和实践,掌握了IPO程序设计模式、Python流程图符号和代码注释的两种方法。并且能够根据要求熟练地使用流程图符号画出对应流程图、使用input函数完成各种类型信息的录入、使用print函数进行格式化输出。同时理解了代码注释的意义,对于复杂的操作,操作前应该写上多行注释、不是一目了然的代码,应在其行尾添加注释。对于许多程序员来说,基本的原则之一就是“:让代码自己说话”。代码的注释不仅仅要为将来可能维护你代码的人考虑,而且要考虑到读注释的可能是你
29
$$