求解答,为什么输出的答案不对?

来源:9-2 Python定义函数

慕仔5249097

2023-04-22 10:26

def square_of_sum(x):

    result = 0

    for M in x :

        y=[]

        y.append(M*M)

        

    result=sum(y)

    return result

print(square_of_sum([1, 2, 3, 4, 5]))

print(square_of_sum([-5, 0, 5, 15, 25]))



写回答 关注

2回答

  • 月夜妖华
    2023-04-23 21:25:25

    def square_of_sum(x):
       result = 0
       y = []
       
       for M in x:
           y.append(M * M)
       result = sum(y)

       return result


    print(square_of_sum([1, 2, 3, 4, 5]))

    print(square_of_sum([-5, 0, 5, 15, 25]))

    你把创建空列表放在循环外就正确了,如果循环一次就创建一个新的列表,那后面的列表会覆盖前面的列表,第一个列表最后一个元素是5,5的平方是25,你的代码运行结果就是这个。正确的答案是55

    翻译

    搜索

    复制

    慕仔5249...

    原来是这样,谢谢

    2023-04-26 09:19:18

    共 1 条回复 >

  • 慕仔5249097
    2023-04-22 10:27:45
    结果是25
    625

Python3 入门教程(新版)

python3入门教程,让你快速入门并能编写简单的Python程序

154152 学习 · 1075 问题

查看课程

相似问题