内容正文:
中物理
第三单元 开启python小宝箱
川教版(2019) 信息技术(七年级下册)
第1节 判断密码正误
学易同步精品课堂
1
课堂导入
通过上一单元的学习,同学们都很有收获。老师奖励给你们的“神秘宝箱”里面有神秘奖品,你们都看到了吗?同学们在打开宝箱时遇到困难没有?
要打开这个宝箱需要正确输入密码,现在我们就来学习怎样用Python语言编写这个判断密码正误的小程序吧。
2
目录
一、简单的密码正误判断
二、循环进行密码判断
三、学用elif子判断语句
四、两种循环语句的差别
学习目标
1. 掌握if判断语句的运用。
2. 掌握while循环语句的运用。
3. 掌握break循环终止语句的运用。
第一课时
第二课时
简单的密码正误判断
一
一、简单的密码正误判断
简单的密码正误判断
一
我们先来整理一下“密码正误判断”的逻辑顺序。
开始
预设密码
输入密码
判断两个密码是否相等
结束判断
是
否
简单的密码正误判断
一
上学期我们学习过可以使用变量来保存程序中的密码,用input( )函数来获取我们输入的密码,使用print( )函数来提示输入正确或错误。同学们还记得吗?
今天我们要来学习一个新的语句——if语句。
if语句的作用是在Python编程语言中实现判断功能。
简单的密码正误判断
一
if语句的语法与格式
if 表达式:
执行语句块一
else:
执行语句块二
语法
格式
注意冒号
注意缩进
注意冒号
注意缩进
上图中的重点是“表达式”。如果“表达式”成立,将会执行语句块一,如果“表达式” 不成立,就会执行语句块二。
简单的密码正误判断
一
使用if语句,我们可以编写简单的密码判断程序,如下图所示。
注意:在Python语言中,比较两个值是否相等,我们使用“==”,如果使用“=”则是为变量赋值,这点需要同学们特别注意。
简单的密码正误判断
一
如果将本代码连续运行3次,前两次输入错误密码,第三次输入正确密码,可以得到如下图所示的结果。
循环进行密码判断
二
二、循环进行密码判断
循环进行密码判断
二
我们刚才使用的密码判断程序每运行一次只能输入一次密码,很不方便,能不能实现只要输入错误就返回重新输入,直到输入正确为止呢?
答案是肯定的,我们可以使用while循环语句来实现重复输入密码,直到输入正确为止。
while语句的语法与格式
while 表达式:
执行语句块
语法
格式
注意冒号
注意缩进
上图中,while循环语句的关键是“表达式”,只要“表达式”成立,下面缩进的语句块就会被执行。
循环进行密码判断
二
如下图所示是我们使用while循环语句实现密码正误判断的代码,代码中的(! =)表示“不相等”,同学们思考一下代码中的“表达式”什么时候成立,什么时候不成立。
下图是运行上面的代码所得的结果:
循环进行密码判断
二
试一试:在下图所示的代码中,输人错误时程序没有“ 密码错误”的提示,你能将“密码错误”的提示加人到代码中去吗?先动手试试,再谈谈自己尝试之后有什么发现。
循环进行密码判断
二
根据同学们的回答,老师总结:表达式是控制while循环是否结束的关键,我们可以在输入正确密码后,强制让“表达式”不成立,循环就会结束。代码如下图:
循环进行密码判断
二
如下图所示,我们将“密码错误”的提示加人到代码中以后,当我们输人的密码不对时,就会出现“密码错误,不能进入!”的提示信息。
循环进行密码判断
二
当判断密码正确时需要“结束循环”,结束循环的最佳方式,就是让while语句的“表达式”不再成立。
Python还为我们提供了一个break语句, 在循环过程中,任何时候遇到break语句,循环都会立即结束。
用break语句结束循环虽然更简单,但我们还是应该尽量采用“让表达式不成立”来结束循环。如果break语句使用过多,一旦出现问题会很难查错。
循环进行密码判断
二
运行效果如下图:
拓展阅读
二
密码安全与字典攻击
我们刚才编写的代码中,用户可以无限次输入密码,这为某些人提供了猜测密码的机会。有人发现,人们的密码往往有规律,比如使用8个1或者8个0当作密码、用出生年月日当密码、用姓名字母或者手机号前几位当密码等等。根据这个规律,可以将生日、手机号前几位、姓名拼音、常见数字组合、常见的字母组合等内容全部保存为文本文件,这个文件被称为“密码字典”。黑客们可以编写程序,每次从密码字典中读出一条数据,用来尝试破解密码——这种违法行为, 被称为“字典攻击”。这个文件中只有不到20万条数据,却可以破解人们70%以上的密码。
拓展阅读
二
黑客使用的常见密码字典文件
’tiu/myfiles/密码字典大全/
名称 描述
docs folder
mkdocs.yml YAML document