python 快速遍历数组,在Python 3中遍历数组

I haven't been coding for awhile and trying to get back into Python. I'm trying to write a simple program that sums an array by adding each array element value to a sum. This is what I have:

def sumAnArray(ar):

theSum = 0

for i in ar:

theSum = theSum + ar[i]

print(theSum)

return theSum

I get the following error:

line 13, theSum = theSum + ar[i]

IndexError: list index out of range

I found that what I'm trying to do is apparently as simple as this:

sum(ar)

But clearly I'm not iterating through the array properly anyway, and I figure it's something I will need to learn properly for other purposes. Thanks!

解决方案

When you loop in an array like you did, your for variable(in this example i) is current element of your array.

For example if your ar is [1,5,10], the i value in each iteration is 1, 5, and 10.

And because your array length is 3, the maximum index you can use is 2. so when i = 5 you get IndexError.

You should change your code into something like this:

for i in ar:

theSum = theSum + i

Or if you want to use indexes, you should create a range from 0 ro array length - 1.

for i in range(len(ar)):

theSum = theSum + ar[i]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值