『Python基础-6』if语句, if-else语句
『Python基础-6』if语句, if-else语句
目录:
- 条件测试
- if语句
- if-else语句
1. 条件测试
- 每条if语句的核心都是一个值为True或False的表达式,这种表达式被称为条件测试。
- Python 根据条件测试的值为True还是False来决定是否执行if语句中的代码。
- 如果条件测试的值为True, Python就执行紧跟在if语句后面的代码.
- 如果为False,Python就忽略这些代码。
- Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。
- 可以通过下图来简单了解条件语句的执行过程:

num1 =1
num2 =2
result = num1 ==num2
print(result) #运行结果:False
- 运用关系运算符和逻辑运算符,我们可以做很多的测试;例如:
~ 检查是否相等
~ 检查是否相等时不考虑大小写
~ 检查是否不相等
~ 比较数字
~ 使用and和or检查多个条件
~ 检查特定值是否包含(或不包含)在列表里
~ 检查两个字符串相等和不等。
~ 使用函数 lower()的测试。
~ 检查两个数字相等、不等、大于、小于、大于等于和小于等于。
2. if语句
编程时经常需要检查一系列条件,并据此决定采取什么措施。在 Python中,if语句让你能够检查程序的当前状态,并据此采取相应的措施。
if语句的格式:
if 判断的条件
条件成立, 执行if语句里的代码
不成立,执行if语句外的代码
[!]一定要注意缩进问题!if 只执行if语句后面所有缩进的语句,否则,将忽略。
age = int(input("请输入您的年龄:"))
print("if语句将要开始判断条件啦")
if age >= 18:
print("您已达到法定年龄.") # 条件成立,执行这句话
print("if语句判断条件结束啦")
3. if-else语句
经常需要在条件测试通过了时执行一个操作,并在没有通过时执行另一个操作;在这种情况 下,可使用Python提供的if-else语句。
if-else语句块类似于简单的if语句,但其中的else语句 让你能够指定条件测试未通过时要执行的操作.
例如,根据年龄段收费的游乐场 票价查询:
age = 12
if age < 4:
price = 0
elif age < 18:
price = 5
elif age <65:
price=10
else:
price = 10
print("你的门票价格是$" + str(price) + ".")
- 为让代码更简洁,可不在if-elif-else代码块中打印门票价格,而只在其中设置门票价格, 并在它后面添加一条简单的print语句:
- 可根据需要使用任意数量的elif代码块,例如,假设前述游乐场要给老年人打折,可再添加 一个条件测试,
省略else代码块
Python并不要求if-elif结构后面必须有else代码块。
在有些情况下,else代码块很有用;而 在其他一些情况下,使用一条elif语句来处理特定的情形更清晰.
例如上边的门票案例,可以写的更清晰简略:
age = 12
if age < 4:
price = 0
elif age < 18:
price = 5
elif age < 65:
price = 10
elif age >= 65:
price = 5
print("您的门票价格为$" + str(price) + ".")
注意:
if-elif-else结构功能强大,但仅适合用于只有一个条件满足的情况:遇到通过了的测试后, Python就跳过余下的测试。这种行为很好,效率很高,让你能够测试一个特定的条件。
然而,有时候必须检查你关心的所有条件。在这种情况下,应使用一系列不包含elif和else 代码块的简单if语句。
谢谢阅读!(o)/~
『Python基础-6』if语句, if-else语句的更多相关文章
- 『Python基础-10』字典
# 『Python基础-10』字典 目录: 1.字典基本概念 2.字典键(key)的特性 3.字典的创建 4-7.字典的增删改查 8.遍历字典 1. 字典的基本概念 字典一种key - value 的 ...
- 『Python基础-9』元祖 (tuple)
『Python基础-9』元祖 (tuple) 目录: 元祖的基本概念 创建元祖 将列表转化为元组 查询元组 更新元组 删除元组 1. 元祖的基本概念 元祖可以理解为,不可变的列表 元祖使用小括号括起所 ...
- 『Python基础-8』列表
『Python基础-8』列表 1. 列表的基本概念 列表让你能够在一个地方存储成组的信息,其中可以只包含几个 元素,也可以包含数百万个元素. 列表由一系列按特定顺序排列的元素组成.你可以创建包含字母表 ...
- 『Python基础-7』for循环 & while循环
『Python基础-7』for循环 & while循环 目录: 循环语句 for循环 while循环 循环的控制语句: break,continue,pass for...else 和 whi ...
- 『Python基础-1 』 编程语言Python的基础背景知识
#『Python基础-1 』 编程语言Python的基础背景知识 目录: 1.编程语言 1.1 什么是编程语言 1.2 编程语言的种类 1.3 常见的编程语言 1.4 编译型语言和解释型语言的对比 2 ...
- 『Python基础-12』各种推导式(列表推导式、字典推导式、集合推导式)
# 『Python基础-12』各种推导式(列表推导式.字典推导式.集合推导式) 推导式comprehensions(又称解析式),是Python的一种独有特性.推导式是可以从一个数据序列构建另一个新的 ...
- 『Python基础-11』集合 (set)
# 『Python基础-11』集合 (set) 目录: 集合的基本知识 集合的创建 访问集合里的值 向集合set增加元素 移除集合中的元素 集合set的运算 1. 集合的基本知识 集合(set)是一个 ...
- 『Python基础-5』数字,运算,转换
『Python基础-5』数字,运算,转换 目录 基本的数字类型 二进制,八进制,十六进制 数字类型间的转换 数字运算 1. 数字类型 Python 数字数据类型用于存储数学上的值,比如整数.浮点数.复 ...
- 『Python基础-4』字符串
# 『Python基础-4』字符串 目录 1.什么是字符串 2.修改字符串 2.1 修改字符串大小 2.2 合并(拼接)字符串 2.3 使用乘号'*'来实现字符串的叠加效果. 2.4 在字符串中添加空 ...
随机推荐
- 【Leetcode】【Medium】Subsets II
Given a collection of integers that might contain duplicates, S, return all possible subsets. Note: ...
- Session跨域、Session共享、Mode=StateSever方式解决问题
前言 很多童鞋在工作或面试的过程中,也许会遇到这样的问题,使用Session,怎样让多个站点实现Session共享的问题,也就是在A站点登录,那么在B站点就不需要重新登录了那?如果采用Session保 ...
- shell 脚本中后台执行命令 &
最近遇到一个问题, 执行脚本,脚本调用 一个命令,命令(deamon)是一个守护进程,为了调试,取消了守护进程模式.导致命令后边的其他命令(echo "456")都无法执行. de ...
- laravel-5-doctrine-2 教程
Open up a Terminal again, cd into learning folder and run: composer require "laravel-doctrine/o ...
- FZU-1759 Super A^B mod C---欧拉降幂&指数循环节
题目链接: https://cn.vjudge.net/problem/FZU-1759 题目大意: 求A^B%C 解题思路: 注意,这里long long需要用%I64读入,不能用%lld #inc ...
- 使用Fragment填充ViewPager
在上一篇文章中,讲解了使用PagerAdapter作为适配器时的ViewPager的使用方法.然后在实际项目中更多的使用Fragment作为页卡,因为实际开发中每一个页卡要复杂的多.而使用Fragme ...
- BZOJ1116:[POI2008]CLO(并查集)
Description Byteotia城市有n个 towns m条双向roads. 每条 road 连接 两个不同的 towns ,没有重复的road. 你要把其中一些road变成单向边使得:每个t ...
- libconfig C++ 学习笔记
1. C++API 头文件 #include <libconfig.h++> ,命名空间:using namespace libconfig; 2.多线程使用问题: (1)libconfi ...
- shiro密码的比对,密码的MD5加密,MD5盐值加密,多个Relme
有具体问题的可以参考之前的关于shiro的博文,关于shiro的博文均是一次工程的内容 密码的比对 通过AuthenticatingRealm的CredentialsMatcher方法 密码的加密 ...
- ResourceWarning: unclosed <socket.socket fd=864, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('10.100.x.x', 37321), raddr=('10.1.x.x', 8500)>解决办法
将代码封装,并使用unittest调用时,返回如下警告: C:\python3.6\lib\collections\__init__.py:431: ResourceWarning: unclosed ...