描述:
在一行输入几个正整数,用这几个正整数建立一个列表,输出列表中,所有索引是偶数的元素的和。
输入描述
一行,按字符串形式输入若干个正整数(数量大于3),相邻两个正整数用一个空格分隔。
输出描述
一个整数,表示列表中所有索引是偶数的元素的和。
用例输入 1 用例输出 1
1 2 3 4 4
提示:
s = input() #输入一个字符串,赋值给s
a = s.split(’ ') #将字符串s按空格拆分,保存到列表a中
lis = [int(i) for i in a] #将列表a的元素转换成整数,保存到列表lis中
---------------------------------------------------------------------------------------------------------------------------------
我们看到第一行他说了输入,那么就要先写输入代码:
s = input("请输入一串字符,每个数之间都用空格隔开:")
---------------------------------------------------------------------------------------------------------------------------------
接着看:
求输出列表中,所有索引是偶数的元素的和.
我们看到列表两个字和偶数两个字,就知道要转换字符串为列表了而且每个元素都要数字化。
a = s.split(' ')
lis = [int(i) for i in a]
---------------------------------------------------------------------------------------------------------------------------------
lis = [int(i) for i in a]
这一串的作用是(AI回答):
这个Python表达式 [int(i) for i in a]
是列表推导式,它的目的是将序列 a
中的每个元素转换成整数(如果当前元素不是整数)。具体来说:
- 首先,
for i in a
遍历列表a
的每一个元素i
。 - 然后,
int(i)
将遍历到的每个元素i
转换为整数类型。 - 最后,整个列表推导过程会生成一个新的列表,其中包含了原始列表
a
中所有元素经过 int() 函数处理后的整数版本。
例如,如果你有一个包含字符串的列表 [1, '2', '3.5']
,应用这个表达式后,你会得到新的整数列表 [1, 2, 3]
。
---------------------------------------------------------------------------------------------------------------------------------
最后我们看输出描述:
一个整数,表示列表中所有索引是偶数的元素的和。
题目里说了,是索引为偶数的元素之和,我们知道索引是从0开始的所以就要打印第0个,第2个,第4个,第......个,第双数个。
print(sum(lis[ : : 2]))
sum(lis[::]) 的意思(AI回答):
这是一个Python代码片段,其中lis
通常代表一个列表(list),[::]
被称为切片操作。::
表示从列表的第一个元素开始到最后一个元素结束,步长为1,即它会计算列表中所有元素的和。这个表达式等同于使用内置函数sum()
对整个列表进行求和。
--------------------------------------------------------------------------------------------------------------------------------
OK我知道,你有点懒:
s = input()
a = s.split(' ')
lis = [int(i) for i in a]
print(sum(lis[ : : 2]))