条件执行语句

浏览 2544

课文

布尔表达式

布尔表达式只有两种结果,为 True(真)和 False(假)。

例如

print(5 == 5)
print(5 == 6)
True
False

此时的 TrueFasle 同属于 bool(布尔)类型,可以使用 type 查看其类型。

print(type(True))
print(type(5 == 6))
<class 'bool'>
<class 'bool'>

包括 == 在内有以下几种比较运算符。

x == y               # x 等于 y
x != y               # x 不等于 y
x > y                # x 大于 y
x < y                # x 小于 y
x >= y               # x 大于等于 y
x <= y               # x 小于等于 y
x is y               # x 与 y 是同一个对象
x is not y           # x 与 y 不是同一个对象

逻辑运算

逻辑运算符有三个,分别是 and(与)、or(或)和 not(非)。

x and y     # x 和 y 必须都为 True 时结果为 True, 否则为 False
x or y      # x 或 y 存在任意一个为 True 则为 True, 否则为 False
not x       # x 为 True 则为 False, x 为 Flase 则为 True
x > 2 and x < 5             # 当 x 大于2同时小于5时返回 True
x % 2 == 0 or x % 3 == 0    # 当 x 能被2或被3整除时返回 True
not (x > 2)                 # 当 x 不大于2时返回True

条件执行

条件执行功能同时是一个程序的基本,比如机器人小明上街买菜, 你让他在西瓜低于 10 块钱时买入。 此时就需要一个条件执行语句。

if price < 10:
    print('买入西瓜')

if 关键字后面的布尔表达式就被称为判断条件,我们的 if 判断条件语句以:(冒号)来结束。 下一行开始则为条件执行语句, 以缩进作为代码块的区分。

西瓜

当西瓜价格低于 10 块时买入,否则买西红柿可以这么写。

if melon_price < 10:
    print('买入西瓜')
else:
    print('买入西红柿')

此时的 else 代表着 if 条件不成立的情况所执行的语句。

西瓜西红柿

你还可以执行多个判断,在西瓜价格低于 10 块钱时买入,否则在西红柿价格低于 5 块钱时买入,再不然回家睡觉。

if melon_price < 10:
    print('买入西瓜')
elif tomato_price < 5:
    print('买入西红柿')
else:
    print('回家睡觉')

西瓜西红柿睡觉

我们还可以在 if 语句中嵌套 if 语句, 比如小明机器人买了西红柿,想搭配着炖个猪肉或牛肉,哪个便宜炖哪个,那我们可以这么写。

if melon_price < 10:
    print('买入西瓜')
elif tomato_price < 5:
    print('买入西红柿')
    if beer_price < pork_price:
        print('回家炖西红柿牛肉')
    else:
        print('回家炖西红柿猪肉')
else:
    print('回家睡觉')

实战

1.引导用户输入整数,判断其是偶数还是奇数

2.同样是引导用户输入整数,判断其是否是质数

解析

1.引导用户输入整数,判断其是偶数还是奇数

while True:
    inp = int(input('请输入整数:'))

    if inp % 2 == 0:
        print('你输入的是偶数')
    else:
        print('你输入的是质数')
请输入整数:3
你输入的是质数
请输入整数:4
你输入的是偶数

2.同样是引导用户输入整数,判断其是否是质数

while True:
    inp = int(input('请输入整数:'))

    for n in range(2, inp):
        if inp % n == 0:
            print('你输入的不是质数')
            break
    else:
        print('你输入的是质数')
请输入整数:2
你输入的是质数
请输入整数:4
你输入的不是质数
请输入整数:7
你输入的是质数
点击查看

评论

登录参与讨论

心

2021-04-14

回复

折纸为鹤

质数这个就是把所有小于 inp 的数都试着求一下余,如果能求余说明能整除,inp 就不是质数

@心

2021-05-11

回复

wwd

以为不用循环能解决,结果标准答案还是用到循环啦

2021-06-24

回复

共 2 条
  • 1
前往
  • 1