牛客网、赛码网在线笔试输入输出练习简洁版python3

  • Post author:
  • Post category:python




1

输入描述:输入包括两个正整数a,b,输入数据包括多组

输出描述:输出a+b的结果

示例:

输入:

1 5

10 20

输出:

6

30



解法一:(错误解法)

while True:
    a,b=map(int,input().split())
    print(a+b)



解法二

while True:
    try:
        a,b=map(int,input().split(' '))
        print(a+b)
    except:
        break



2

在这里插入图片描述



解法一:错误解法

错误原因在于无需使用 while True

while True:
	n=int(input())
	for _ in range(n):
	    a,b=map(int,input().split())
	     print(a+b)



解法二

while True:
    try:
        n=int(input())
        for _ in range(n):
            a,b=map(int,input().split())
            print(a+b)
    except:
        break



解法三

n = int(input().strip())
for _ in range(n):
    nums=[int(c) for c in input().split()]
    print(sum(nums))   



解法四

n=int(input().strip())
for _ in range(n):
    a,b=map(int,input().split())
    print(a+b)



3

在这里插入图片描述



解法一

while True:
    a,b=map(int,input().split())
    if a==0 and b==0:
       break
    print(a+b)



4

在这里插入图片描述



解法一

while True:
    nums = [int(c) for c in input().split()]
    if nums[0] == 0: break
    print(sum(nums[1:]))        



解法二

while True:
    s = input()
    if s == "0":
        break
    else:
        a = [int(i) for i in s.split()]
        print(sum(a[1:]))



5

在这里插入图片描述



解法一

n = int(input())
for _ in range(n):
    x = [int(x) for x in input().split()]
    print(sum(x[1:]))



解法二

while True:
    try:
        t = int(input())
        for i in range(t):
            n = list(map(int,input().split()))
            sum = 0
            for j in n:
                sum = sum + j
            print(sum-n[0])
    except:
        break



解法三

n = int(input())
for i in range(n):
    print(sum(list(map(int, input().split()))[1:]))    



6

在这里插入图片描述



解法一

while True:
    try:
        nums = list(map(int, input().split()))
        print(sum(nums[1:]))
    except:
        break



解法二: 错误解法

注意,此处说一下这里为何需要 try except。原因在于 1<=n。当n为0时,后面的split()函数便会报错。第 7 题必须使用try execpt函数的原因也是如此。

while True:    
    x = [int(x) for x in input().split( )]
    print(sum(x[1:]))

正确解法:

while True:
    try:
        x = [int(x) for x in input().split( )]
        print(sum(x[1:]))
    except:
        break



7

在这里插入图片描述



解法一

while True:
    try: 
        nums = [int(x) for x in input().split( )]
        print(sum(nums))
    except:
        break



解法二

while True:
    try:
        nums=list(map(int,input().split()))
        print(sum(nums))
    except:
        break

温馨提示,这道题如果不加try except则又会报错。



8

在这里插入图片描述

n = int(input())
a = []
nums = 0
for _ in range(n):
    a.append(list(map(int, input().rstrip().split())))
for i in range(n):
    nums += sum(a[i])
print(nums)#思路是将输入数据都加到一个列表中,最后会得到一个二维列表,再遍历并对这个二维列表求和即可。



9

输入描述:

多组测试数据,第一行输入一个正整数T,代表测试数据组数。

对于每组测试数据,输入两个正整数n。n代表接下来共有几行数据。

输出描述:

每组数据的和。

示例:

输入:

2

3

1 2

2 3

3 4

4

1 2

2 3

3 4

4 5

输出描述:

15

24

N = int(input())
for _ in range(N):
    n = int(input())
    a = []
    for i in range(n):
        a.append(list(map(int, input().split())))
    print(sum(map(sum, a)))#对二维列表求和的语句,一行代码搞定
		



总结



什么时候用while True:

当每输入一行,则需要输出一行,且不固定多少行输入时,则需使用while True语句。参考

2

题型。



什么时候需要使用try except语句

参考

6



7



版权声明:本文为weixin_43249038原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。