大佬教程收集整理的这篇文章主要介绍了无法弄清楚什么不起作用(检查练习“即使是最后一个”),大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
给定一个整数数组。您应该找到具有偶数索引(第 0、第 2、第 4...)的整数的总和。然后将这个求和数与数组的最后一个元素相乘。不要忘记第一个元素的索引为 0。 对于空数组,结果将始终为 0(零)。 输入:整数列表。 输出:作为整数的数字。 前提条件:0 ≤ len(array) ≤ 20 all(isinstance(x,int) for x in array) all(-100
result = 0
if array:
for element in array:
i = array.index(element)
if i%2 == 0:
result += element
else:
pass
else:
return 0
return result
Last_digit = arraY[-1]
final_result = result*Last_digit
return final_result
print(final_result)```
首先,我建议阅读有关发布格式良好的问题的 stackexchange 指南。您需要说明您的目标是什么、您尝试过什么、抛出什么错误以及输出应该是什么样子——以及代码示例和需要的最小可重现示例。
不管怎样,我都会帮你的。
您在第 11 行有一个悬空的 return
:
else:
return 0
return result
这毫无意义,因为您已经返回了 0
。这显然也是一个函数的片段,不是吗?发布整个功能。但是根据说明,你可以试试这个:
import random
array = random.sample(range(-100,100),20)
def etl_func(arr):
arrsum = 0
for i,val in enumerate(arr):
if i%2 == 0: arrsum += val
return (arrsum * arr[-1])
answer = etl_func(array)
print(answer)
请注意,如果您已经获得了要使用的数组,则不需要导入 random
和使用 array = random.sample(range(-100,20)
。它们仅作为示例包含在此处。
另请注意,没有必要使用 else: pass
。如果条件评估为真(即 i%2 == 0
),则将执行 if
块。如果 i%2 != 0
,循环将自动短路并移动到下一次迭代。添加 else: pass
就像告诉坐在你椅子上的人坐在你的椅子上。您是在告诉程序做无论如何它已经要做的事情。包含 else: pass
没有什么必然错误,如果它真的想要......但它只是添加了无意义的代码行,没有人愿意处理。
编辑:我不知道你是应该写一个函数还是只是一些代码(回到“提出一个格式正确的问题”问题......),所以我去了带功能。将函数变成简单的代码应该是微不足道的——但是您希望养成编写良好函数以实现可重用性和模块化的习惯。让一切运行更顺畅、更优雅,并使故障排除更容易。
此函数也适用于您原始帖子的评论中提到的数组。
此外,如果您需要直接替换您的代码(而不是函数...我不熟悉 checkio 或您的答案应该如何格式化),并且您已经存储了整数数组在变量 array
中,试试这个:
arrsum = 0
for i,val in enumerate(array):
if i%2 == 0: arrsum += val
print(arrsum * arraY[-1])
由于您的问题没有说明使用或定义函数的任何内容,return
语句不应出现在任何地方。除非你在写一个函数,否则没有什么可返回的。
我已经解决了问题,即您共享了遇到问题的阵列。因为你有这个数组:
[-37,-36,-19,-99,29,20,3,-7,-64,84,36,62,26,-76,55,-24,49,-65,41]
如果你注意到这里,84 出现了两次,第一次出现在索引 9,然后出现在 16。你用来获取元素索引的方法,.index
返回元素在第一个实例中找到的索引列表。因此,对于 84 的值,索引被视为 9 而不是 16,这是一个奇数,这不会将 84 添加到您的总和中。您应该将 enumerate
用于您的代码:
for idx,element in enumerate(array):
if idx %2 == 0:
result += element
以上是大佬教程为你收集整理的无法弄清楚什么不起作用(检查练习“即使是最后一个”)全部内容,希望文章能够帮你解决无法弄清楚什么不起作用(检查练习“即使是最后一个”)所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。