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("亲爱的,那就下次见了,一票难求啊~~~~(>_<)~~~~")

results matching ""

    No results matching ""