条件控制其实就是if...else...(如果...条件是成立的,就做...;反之,就做...)的使用,其基本结构是:

具体看下面这个例子:

 def account_login():
     # 定义函数
     password = input('请输入密码:')
     # 输入密码
     ':
         # 如果输入密码是12345,则登录成功
         print('登录成功')
     else:
         print('密码有误,请重新输入')
         # 否则提示密码有误,请重新输入
         account_login()
         # 输入错误后再次运行函数

 account_login()
 # 调用函数

定义一个账号登录函数,使用input()函数获取用户输入的内容并储存在变量password中,如果输入密码正确,提示用户“登录成功”,否则提示“密码有误,请重新输入”。

程序运行后,在执行结果中输入“12345”,会返回“登录成功”;输入12345以外的数字,均会提示“密码有误,请重新输入”,此时可再次输入密码。

注意在if和else后面一定要加冒号,前面的缩进是指该部分属于哪块内容。

除了上面的单条件控制外,多条件判断也比较简单,只需要在if...else之间加elif,用法和if...else类似。

现在,我们给刚才的例子增加一个密码重置的功能:

 password_list = [']
 # 创建密码列表

 def account_login():
     password = input('请输入密码:')
     password_correct = password == password_list[-1]
     # 给password_correct赋值
     password_reset = password == password_list[0]
     if password_correct:
         print('登录成功')
     elif password_reset:
         new_password = input('请输入新密码:')
         # 如果输入的是password_reset的值,提示用户输入新密码
         password_list.append(new_password)
         # 用append()方法将用户输入的新密码插入password_list中
         print('密码重置成功')
         account_login()
     else:
         print('密码有误,请重新输入')
         account_login()

 account_login()

 print(password_list)
 # 可以查看最新的列表内容

程序运行后会提示请输入密码,如果输入“##”,这时会进入密码重置环节,会提示“请输入新密码”,输入新密码后,会在password_list的末尾插入新密码,密码输入正确时,会显示“登录成功”。

最后一行的print(password_list),是为了验证自己重置的新密码是否插入进了password_list中。

后续我会详细介绍下循环。

操作环境:Python版本,3.6;PyCharm版本,2016.2;电脑:Mac

-----   End   -----

作者:杜王丹,微信公众号:杜王丹,互联网产品经理。

产品经理学Python:条件控制的更多相关文章

  1. 产品经理学Python:参数传递方式

    这是关于Python的第5篇文章,主要介绍下参数传递方式和如何设计自己的函数. (一) 本篇主要介绍2种参数传递方式. 位置参数 调用函数时,根据函数定义的参数位置来传递参数. def right_t ...

  2. Python 条件控制

    Python  条件控制 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: if 语句 Python中if语 ...

  3. Python - 条件控制、循环语句 - 第十二天

    Python 条件控制.循环语句 end 关键字 关键字end可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符,实例如下: Python 条件语句是通过一条或多条语句的执行结果(True 或 ...

  4. 产品经理学Python:逻辑判断与运算符

    这是关于Python的第6篇文章,主要介绍下逻辑判断与运算符. (一) 逻辑判断: 如果要实现一个复杂的功能程序,逻辑判断必不可少.逻辑判断的最基本标准:布尔类型. 布尔类型只有两个值:True和Fa ...

  5. python条件控制

    条件控制 现在我们写这样一个程序:在程序里设定好你的年龄,然后启动程序让用户猜测,用户输入后,根据他的输入提示用户输入的是否正确,如果错误,提示是猜大了还是小了 my_age = 24 user_in ...

  6. Python条件控制与循环语句

    1. 条件控制 # if-elif-else结构 age = 12 if age < 4: price = 0 elif age < 18: price = 5 else: price = ...

  7. 产品经理学Python:for循环、while循环

    Python中有两种循环,分别为:for循环和while循环. 1. for循环 for循环可以用来遍历某一对象(遍历:通俗点说,就是把这个循环中的第一个元素到最后一个元素依次访问一次).for循环的 ...

  8. Python条件控制与循环

    条件控制语句:if 循环语句:while.for 其他语句:continue.break.pass 1.if语句 # ================================ a = 1 if ...

  9. Python入门:条件控制

    条件控制其实就是if...else...(如果...条件是成立的,就做...:反之,就做...)的使用,其基本结构是: 具体看下面这个例子: def account_login(): # 定义函数 p ...

随机推荐

  1. ngrok localhost和http 的转换

    得益于老大的教导,今天又接触到一个有意思的东西,希望分享出来,供大家玩耍----“ngrok”: 乍一看还以为是angualar的新玩意,其实不是.这这家伙可以使本地开发的web应用,不用打包上传,也 ...

  2. SQL SERVER 执行大于80M的SQL 脚本

    在CMD控制器窗口 使用SqlCmd命令来执行 具体请看 SqlCmd /? 或者MSDN

  3. rem 结合 scss 移动端自适应 初级入门demo

    首先说明 本篇 内容 适合初级使用 rem 开发移动端 自适应 公式计算 推导过程, 高手绕路. 目标尺寸 = rem  *  根字体大小 Px   =  rem * (html根字体px) 根字体大 ...

  4. Linux之kill,pkill,killall命令

    kill,pkill,killall这些命令都是用来杀死进程的 查找进程的方法: ps -ef|grep pidof 进程名 ps命令 http://www.cnblogs.com/along1226 ...

  5. WKWebView代理方法解析

    一.前言 上一篇文章已经对WKWebView做了一个简单的介绍,主要对它的一些方法和属性做了一个简单的介绍,今天看一下WKWebView的两个协议:WKNavigationDelegate 和 WKU ...

  6. crontab的定时任务不能自动执行,但是手动执行脚本一直能成功

    crontab 问题小记: 环境变量问题, 养成良好的习惯, 在脚本开头export PATH 原因是 crontab 执行定时任务时,用的不是系统环境变量,而是自己的环境变量,可以把 echo $P ...

  7. CI Weekly #16 | 从另一个角度看开发效率:flow.ci 数据统计功能上线

    很开心的告诉大家,flow.ci 数据统计功能已正式上线. 进入 flow.ci 控制台,点击「数据分析」按钮,你可以按照时间日期筛选,flow.ci 将多维度地展示「组织与项目」的构建数据指标与模型 ...

  8. iOS 历史浏览网页的定向跳转

    在实际的开发过程中,涉及到交互的问题,原生和H5的网页相互嵌套,直接造成跳转的混乱,混乱就应该指定的历史记录中,就需要网页的一些相关的一些属性问题 需要在webview里面的代理方法中执行相对应的操作 ...

  9. 性能调优之MYSQL高并发优化下

    三.算法的优化 尽量避免使用游标,因为游标的效率较差,如果游标操作的数据超过1万行,那么就应该考虑改写..使用基于游标的方法或临时表方法之前,应先寻找基于集的解决方案来解决问题,基于集的方法通常更有效 ...

  10. 通过js获取元素css3的transform rotate旋转角度方法

    我们再试用jquery获取样式的时候是通过$('domName').css('transform'):的方式来获取元素的css样式,但是通过它获取到的css3的transform属性是以矩阵的方式呈现 ...