题目链接
题目描述
你的任务是计算a+b。
输入描述
输入包含一系列的a和b对,通过空格隔开。一对a和b占一行。
输出描述
对于输入的每对a和b,你需要依次输出a、b的和。
如对于输入中的第二对a和b,在输出中它们的和应该也在第二行。
输入示例
3 4
11 40
输出示例
7
51
思路:
- 输入的数必须是在同一行,且这一行只有两个数字时它才会计算:
- 有输入就会使用到input()函数,且它得到的值是字符串
- 用split()函数会将得到的字符串通过空格进行分隔
- 因为一行只接受两个数字a,b相加,所以只用两个数组来分别接收他们的值
- 将字符串的数据类型转化成数值类型,然后相加
- 输入一系列的a,b且只要是每一行都只有a,b它就会无限的进行相加:
- 无限循环的运行模式,就会用到while循环
- 找出循环的终止条件——输入停止则循环终止
# while True表示循环
while True:
# 尝试执行这里的程序,遇到异常时执行except中的程序
try:
# 将输入的字符串分割成字符列表
data = input().split()
# 取得第一位和第二位元素后将之转为int类型,并相加
res = int(data[0])+int(data[1])
# 打印结果res
print(res)
except:
# 遇到异常时,退出循环
break
知识点:
- input()函数输出的数永远是字符串类型,即使你输入的是数字123,它得到的也是字符串123,但可以用int()函数将它转化成数值类型
- split()方法用于将一个字符串分割成多个小的子字符串,并返回一个列表,列表包含分割后的子字符串。默认情况下,split()方法使用空格字符作为分隔符,将字符串分成单词。你也可以指定自定义的分隔符作为参数。
- while循环是一种在满足特定条件时重复执行代码块的控制结构,你可以通过设置while循环的条件部分为真(布尔值True),这样循环将一直进行,直到你使用break语句来终止循环
- 在while True的控制下,执行输入、计算、输出的三行代码会持续不断的运行,比如上题你输入一行数据,程序就处理一行数据,但是数据的输入是不会一直进行下去的,当输入结束时,循环也应该终止掉。这时就可以使用try代码块来进行处理,try中的代码会被尝试执行,如果没有发生错误,则正常执行,用户停止输入后,输入的内容不能正确地分隔两个整数,或者其他可呢的错误发生,就会引起程序异常,这时就会由except捕获异常并执行异常处理代码
while True:
try:
#尝试执行这里的程序
except:
#捕获异常,执行异常处理代码
break