亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

這段代碼為什么不行?錯在哪里???

>>>?L=[]
>>>?G=[]
>>>?def?square_of_sum(L):
	for?x?in?L:
		G.append?(x*x)
		return?sum(G)

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

這段代碼為什么不行?錯在哪里???

正在回答

2 回答

return sum(G)位置寫錯了,寫在了for循環之內。


def?square_of_sum(L):

????for?x?in?L:

????????G.append?(x*x)

? ? return?sum(G) ?# ?正確位置


0 回復 有任何疑惑可以回復我~
#1

Jack_No_1 提問者

非常感謝,另外我還想問一下,是不是沒有必要先定義出L[]和G[]?。?/div>
2016-11-17 回復 有任何疑惑可以回復我~
#2

sinoxwang 回復 Jack_No_1 提問者

沒有必要,因為不起任何作用。請注意在函數定義時的參數屬于“形式參數”,也就是說def square_of_sum(L):這里的L和之前的L = []并不相同,是完全不相關的兩個list。只有在之后函數調用時square_of_sum([1,2,3,4,5]), list [1,2,3,4,5]才被賦值給形參L。
2016-11-17 回復 有任何疑惑可以回復我~
#3

Jack_No_1 提問者

回復 sinoxwang明白了 謝謝大神。
2016-11-17 回復 有任何疑惑可以回復我~
#4

慕粉4130263 回復 sinoxwang

請問 改成正確位置后,print square_of_sum([-5, 0, 5, 15, 25])的結果為什么是955?
2017-03-07 回復 有任何疑惑可以回復我~
查看1條回復

sum(G)是不可行的吧。如果你是想計算L[]里的平方和。應該寫sum=0,sum=sum+x*x。 return sum 就好了,沒必要弄個G[]

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

舉報

0/150
提交
取消
初識Python
  • 參與學習       758396    人
  • 解答問題       8967    個

學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序

進入課程

這段代碼為什么不行?錯在哪里???

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號