【卡码网Python基础课(A+B问题3)】


题目描述

题目描述:你的任务依然是计算a+b。

输入描述:输入中每行是一对a和b。其中会有一对是0和0标志着输入结束,且这一对不要计算。

输出描述:对于输入的每对a和b,你需要在相应的行输出a、b的和。
如第二对a和b,他们的和也输出在第二行。

一、if语句

在Python中,if 语句是一种基本的控制结构,用于根据一个或多个条件来执行不同的代码块。这种结构允许程序在运行时做出决策,并根据条件的不同采取不同的行动。

1.基本语法

if语句基本语法如下:

if 条件表达式:
    # 如果条件表达式为真,则执行这里的代码
elif 另一个条件表达式:
    # 如果第一个条件为假,这里的条件为真,则执行这里的代码
else:
    # 如果上面的条件都不为真,则执行这里的代码

2.布尔表达式

在 if 语句中使用的条件表达式通常返回布尔值(True 或 False)。表达式可以是简单的比较(如 a > b),也可以是逻辑表达式(使用 and、or 和 not 操作符组合多个条件)。

下面这个例子是包含条件表达式的if语句:

score = 75
if score >= 90:
    print("Excellent")
elif score >= 60:
    print("Good")
else:
    print("Fail")

二、关系运算符

退出循环的条件就是需要判断a、b的值和0相等,在python中判断两个值是否相等使用的是==运算符,它是关系运算符(也称为比较运算符)的一种。

在Python中,关系运算符(也称为比较运算符)用于比较两个值之间的关系,并根据比较的结果返回布尔值(True 或 False)。关系运算符是构建条件表达式和控制程序流程的基础,尤其在使用if语句和循环时非常重要。

此外还有一些其他的关系运算符可以比较两个值之间的关系,并总会返回一个布尔值,如果关系成立,返回True, 否则返回False

>: 表示大于,比较左侧值是否大于右侧值
<: 表示小于,比较左侧值是否小于右侧值
>=: 表示大于等于,比较左侧的值是否大于或等于右侧的值
<=: 表示小于等于, 比较左侧的值是否小于或等于右侧的值
!=: 表示不等于,比较两个值是否不相等

三.逻辑运算符

想要表达a==0同时b==0这种“与”的关系,需要逻辑运算符来实现。

在Python中,逻辑运算符用于连接布尔表达式,根据操作数的逻辑值返回布尔结果。逻辑运算符主要有三种:and、or、和 not。这些运算符在控制程序流程、编写条件语句以及构建复杂的布尔表达式时非常有用

1.and: 如果两个操作数都是 True,结果才为 True。如果其中任何一个操作数为 False,结果就为 False。

print(True and True)   # 输出: True
print(True and False)  # 输出: False
print(False and True)  # 输出: False
print(False and False) # 输出: False

2.or: 如果任何一个操作数为 True,结果就为 True。只有当两个操作数都是 False 时,结果才为 False。

print(True or True)   # 输出: True
print(True or False)  # 输出: True
print(False or True)  # 输出: True
print(False or False) # 输出: False

3.not: not 是一个单目运算符,用于反转操作数的布尔值。如果操作数为 True,结果为 False;如果为 False,结果为 True。

print(not True)  # 输出: False
print(not False) # 输出: True

所以想要判定 a 和 b 的结果是否“都”等于0,可以使用逻辑与,也就是a == 0 and b == 0, 将之作为if语句的条件

# 如果 a和0相等 并且 b和0 也相等
if a == 0 and b == 0:
      # 执行对应代码

在以后的学习中,我们会经常见到类似的结构:

val只要是非零数值、非空字符串、非空列表等,就判断为True,否则为False。

# 如果val是任何的非0值,条件为真,执行代码
if val:
# 如果val是0,转换为false,经过非运算后进行取反,条件为真
if not val:

所以除了可以写成a == 0 and b == 0的形式,还可以这样写:

if not a and not b:
    # 执行对应的代码

如果 a 为 0,转换为 false, 经过not运算后对结果取反,现在的结果为True, b 的运算同理,则 and 运算两边都为 True, True and True, 整体结果也为true, 这表明当 a 和 b 都为 0的情况下,执行对应的代码。

四.break退出循环

经过前面的学习,我们已经知道如何进行条件判断,所以这个问题可以用以下代码来解决:

while True: 
    try:
        s = input().split()
        a, b = int(s[0]), int(s[1])
        # 如果输入的a和b同时为0, 则终止循环,如果不是同时为0,则跳过该代码块,不执行
        if a == 0 and b == 0:
              # 遇到特定输入时退出循环
            break
        print(a + b)
    except:
        break

五、条件运算符

在Python中,条件运算符(也被称为三元运算符或三元条件表达式)提供了一种简洁的方式来基于某个条件选择两个表达式中的一个。它的基本形式是:

语句1 if 条件表达式 else 语句2

条件运算符在执行时,会先对条件表达式进行求值判断, 如果判断结果为True, 则执行语句1,并返回执行结果,如果判断结果为False, 则执行语句2,并返回执行结果。

下面这个例子是获取a和b之间的较大值:

# 基于条件赋值
a = 10
b = 5
max_value = a if a > b else b
print(max_value)  # 输出: 10
  • 14
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值