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

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

python的平方和怎么理解?

def?square_of_sum(L):
????return?sum([i?*?i?for?i?in?L])
print?square_of_sum([1,?2,?3,?4,?5])
print?square_of_sum([-5,?0,?5,?15,?25])
#def?square_of_sum(L):
????sum?=?0
????for?x?in?L:
????????sum?=?sum?+?x?*?x
????return?sum
print?square_of_sum([1,?2,?3,?4,?5])
print?square_of_sum([-5,?0,?5,?15,?25])

能幫我理解一下這為什么可以使元素平方和return sum([i * i for i in L])#這個完全不能理解為什么

sum = 0
? ?for x in L:#這個循環的for是使list的元素全計算吧
? ? ? ?sum = sum + x * x#這個好理解python的平方并不是反v而是*但是sum+x*x的sum是什么?我記得是使打印的時候是整數?
? ?return sum

正在回答

1 回答

1. ? sum() 是求和函數

? ? ? print sum([1, 3]) ?打印出來的結果就是4

2. ? i * i for i in L 是列表生成式

? ? ?比如 i * i for i in[1, 2, 3] 就產生了一個新的列表 [1, 4, 9]

再接著綜合以上的兩個 ? sum([i * i for i in L])就是對產生的新的列表的求和

3.


? ?sum = sum + x * x ? ?

? 這么解釋:如果sum開始為0,x是列表L的元素,比如L為【1, 2, 3】,那么第一次循環,sum 初始0, sum被賦值為0 + x * x=0 + 1 * 1 = 1,第二次循環,sum被賦值為1 + 2 * 2 = 5,第三次循環,sum被賦值為5 + 3 * 3=

14,循環結束,sum = 14

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

雪乃 提問者

非常感謝!
2018-01-21 回復 有任何疑惑可以回復我~

舉報

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

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

進入課程

python的平方和怎么理解?

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

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

幫助反饋 APP下載

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

公眾號

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