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

最简单的格式
if 判断条件:
执行语句……
练习
给定一个变量为age,如果大于18则输出成年,否则什么也不做
pass
它是一段代码,但是什么功能也没有,就表示一个占位。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
"""
@author: 张泽楠
@contact: [email protected]
@file: main.py
@time: 2018/3/8 19:42
"""
age = 20
if age >= 18:
print("成年了")
else:
pass
格式升级
if 判断条件:
执行语句....
else:
执行语句....
练习
给定一个变量为age,如果大于18则输出成年,否则输出未成年
给定一个车票,用1代表有车票,0代表没有车票,如果有车票就上车,没车票就不上车
格式再升级
if 判断条件:
执行语句....
elif 判断条件:
执行语句....
elif 判断条件:
执行语句....
else:
执行语句....
练习
给定一个成绩为score,如果成绩大于90输出优秀,否则如果大于60输出良好,否则输出不及格
多条件混合
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# if语句多个条件
# 条件A并且条件B都成立
num = 9
if num >= 0 and num <= 10: # 判断值是否在0~10之间
print('hello')
# 输出结果: hello
# 条件A或者条件B成立
num = 10
if num < 0 or num > 10: # 判断值是否在小于0或大于10
print('hello')
else:
print 'undefine'
# 输出结果: undefine
num = 8
# 判断值是否在0~5或者10~15之间
if (num >= 0 and num <= 5) or (num >= 10 and num <= 15):
print('hello')
else:
print('undefine')
# 输出结果: undefine
判断数据为空
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# name="" 表示name为字符串对象,但是里面没东西,理解为空
# name=None 表示name为空对象,理解为什么也没有
name = ""
if not name:
print("姓名不存在")
else:
print("姓名存在")
if name:
print("姓名存在")
else:
print("姓名不存在")
三目运算符
#!/usr/bin/env python
# -*- coding:utf-8 -*-
age = 20
result = "成年了" if age > 18 else "没成年"
print(result)
判断奇偶性
#!/usr/bin/env python
# -*- coding:utf-8 -*-
num = 11
if num % 2 == 1:
print("奇数")
else:
print("偶数")
练习
从终端输入一个数字,如果是奇数则输出该数字的3次方,如果是偶数则输出该数字的8次方
#!/usr/bin/env python
# -*- coding:utf-8 -*-
num = input("请输入一个整数:")
num = int(num)
if num % 2 == 1:
print("输入的奇数,它的3次方为:", num**3)
else:
print("输入的偶数,它的8次方为:", num**8)
猜拳游戏
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import random
player = input('请输入:剪刀(0) 石头(1) 布(2):')
player = int(player)
computer = random.randint(0, 2)
# 用来进行测试
print('player=%d,computer=%d' % (player, computer))
if ((player == 0) and (computer == 2)) or ((player == 1) and (computer == 0)) or ((player == 2) and (computer == 1)):
print('获胜,哈哈,你太厉害了')
elif player == computer:
print('平局,要不再来一局')
else:
print('输了,不要走,洗洗手接着来,决战到天亮')
比较(关系)运算符
| 运算符 | 描述 | 示例 |
|---|---|---|
| == | 检查两个操作数的值是否相等,如果是则条件变为真。 | 如a=3,b=3则(a == b) 为 true. |
| != | 检查两个操作数的值是否相等,如果值不相等,则条件变为真。 | 如a=1,b=3则(a != b) 为 true. |
| <> | 检查两个操作数的值是否相等,如果值不相等,则条件变为真。 | 如a=1,b=3则(a <> b) 为 true。这个类似于 != 运算符 |
| > | 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 | 如a=7,b=3则(a > b) 为 true. |
| < | 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 | 如a=7,b=3则(a < b) 为 false. |
| >= | 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 | 如a=3,b=3则(a >= b) 为 true. |
| <= | 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。 | 如a=3,b=3则(a <= b) 为 true. |
逻辑运算符
| 运算符 | 逻辑表达式 | 描述 | 实例 |
|---|---|---|---|
| and | x and y | 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 | (a and b) 返回 20。 |
| or | x or y | 布尔"或" - 如果 x 是 True,它返回 True,否则它返回 y 的计算值。 | (a or b) 返回 10。 |
| not | not x | 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 | not(a and b) 返回 False |
成员运算符
| 运算符 | 描述 | 实例 |
|---|---|---|
| in | 如果在指定的序列中找到值则返回True,否则返回False | if "a" in "abcd": |
| not in | 如果在指定的序列中没有找到值则返回True,否则返回False | if "a" not in "abcd": |
条件嵌套
#!/usr/bin/env python
# -*- coding:utf-8 -*-
chePiao = 1 # 用1代表有车票,0代表没有车票
daoLenght = 9 # 刀子的长度,单位为cm
if chePiao == 1:
print("有车票,可以进站")
if daoLenght < 10:
print("通过安检")
print("终于可以见到Ta了,美滋滋~~~")
else:
print("没有通过安检")
print("刀子的长度超过规定,等待警察处理...")
else:
print("没有车票,不能进站")
print("亲爱的,那就下次见了,一票难求啊~~~~(>_<)~~~~")