编制程序,输入n个整数(n从键盘输入,n>0),输出它们的偶数和。
无
无
2
1 2
2
input()
print(sum([i for i in map(int,input().split()) if i % 2 == 0]))
这段代码涉及到了Python的基础语法、内置函数和一些常用的数据类型和操作符。下面我们来逐个解释:
input()
这行代码使用了内置函数input()
,它用于接收用户的输入。当程序执行到这行代码时,会等待用户在控制台输入内容,并按下回车键。input()
函数会将用户输入的内容作为一个字符串返回。
map(int, input().split())
这行代码使用了内置函数map()
,它接受两个参数:一个函数和一个可迭代对象。在这里,我们将int
函数作为第一个参数传递给map()
函数,表示要将后面的可迭代对象中的每个元素都转换为整数类型。可迭代对象是通过input().split()
得到的,它将用户输入的字符串按空格分割成多个部分,并返回一个包含这些部分的列表。
[i for i in map(int, input().split()) if i % 2 == 0]
这行代码使用了列表推导式(List Comprehension),它结合了map()
函数和条件判断。列表推导式可以快速生成一个列表。在这里,我们遍历了map()
函数返回的可迭代对象中的每个元素i
,并使用条件判断if i % 2 == 0
过滤出其中满足条件的偶数。最终,这行代码返回一个包含满足条件的偶数的列表。
sum([i for i in map(int, input().split()) if i % 2 == 0])
这行代码使用了内置函数sum()
,它接受一个可迭代对象作为参数,并返回其中所有元素的和。在这里,我们将上一行代码返回的列表作为参数传递给sum()
函数,得到满足条件的偶数的总和。
最后,需要注意的是,这段代码中的输入、转换、过滤和求和等操作是按照从左到右的顺序执行的。用户首先需要在控制台输入一串数字,用空格分隔。然后,程序会将这些数字转换为整数类型,并筛选出其中的偶数。最后,程序会计算这些偶数的总和,并将结果打印到控制台上。
再接再厉,接着让我们来练下一题!