为了账号安全,请及时绑定邮箱和手机立即绑定

为什么加上输出语句,就报错,不加反而运行成功,代码在下面

def sub_sum(l):

    s=0

    d=0

    for i in l:

        if i%2==0:

            s=s+i

        else:

            d=d+i

        i=i+1

    return s,d

l=[1,2,3,4,5,6,7,8,9,10]

print(s)

print(d)


正在回答

3 回答

上面说的很对,但是你这个程序只是求奇偶数的和,题目要求奇偶项

0 回复 有任何疑惑可以回复我~

首先,s,d是定义在sub_sum()这个函数中的,这个函数对外只有l一个参数。

当sub_sum()这个函数定义结束时,外部是无法访问内部的s,d

如果你想打印s和d,要改成这样:


def sub_sum(l):

    s=0

    d=0

    for i in l:

        if i%2==0:

            s=s+i

        else:

            d=d+i

        i=i+1

    print(s)

    print(d)

l=[1,2,3,4,5,6,7,8,9,10]

sub_sum(l)


1 回复 有任何疑惑可以回复我~

1、不需要   i=i+1

2、没有定义s,d ,加上这句:s,d = sub_sum(l)

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么加上输出语句,就报错,不加反而运行成功,代码在下面

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信