課程
/后端開發
/Python
/初識Python
sum=0.0?
sum=sum+x?
那是不是 ?0.0=0.0+x?
這啥JB邏輯?
2016-11-20
源自:初識Python 5-4
正在回答
這個sum=sum+x使用的是累加原理.
首先定義一個浮點數類型的變量sum,它的值是0.0 , 通過for循環的遍歷,它從list中每取一次值,就跳出循環一次,直到取完為止.(如果不懂這句話的意思,請在循環下自行添加print x,就會發現它打印的是list中所有的元素,而且每個元素都自動分行打印,表示取出來一個元素,就打印了一次.)
現在來說sum=sum+x, x每次都會得到不同的值, 變量sum加上x并把這個加完的值賦給等號左邊的sum,此時的sum就擁有了當前的值. 進入下一次循環的時候,擁有當前值的sum會再次加x的值,并把新的值繼續賦給sum,直到list所有元素遍歷完成.
舉個例子 : 求元素的和. list中有L=[1,2,3,4], 定義一個變量, 就叫 he = 0, 使用循環for x in L:? he=he+x, print he??? 第一次循環的時候, he+x 就相當于 0+1, 此時he的值就是1,它得到了x的第一次循環的元素. 進入第二次循環, x此時的值成了2,? 那么? he+x 就相當于 1+2, he的結果就被賦值成為3.? 依此類推. 最后he的值就是list中所有元素的和.
至于sum為什么定義成0.0 , 主要是因為最后print求的是平均值. 如果你需要平均值保留小數位,就得用浮點型的變量存數值. 當然,你也可以把sum定義成0, 不過最后sum/4一定會返回一個整數值. 也就是說, 定義成0.0 代表的是浮點數,定義成0,最后結果就一定是舍棄小數位的整數.
感謝看完,希望對您有幫助. 都是新手,共同學習吧.
sum 是一個局部變量,0.0是個浮點型數據大小為0,因為后邊有除法,為了避免系統自動取整,所以要把數據變為浮點型
據我的理解是,那個0.0并不是數學上的0.0,而是一種賦值的語句,這個的意思是把sum的值+x的值再得出新的sum值。在這個題的前面應該有關于初始sum具體是多少的吧?
我的理解來看,sum只是一個變量,它指向它此刻存放數據的地方,也就是存放0.0的位置,然后下面那句就是把這個變量指向的數據拿出來做+x的操作,也就是將0.0再加上x,然后操作完了之后又將其放回了原來的位置。
飄雪的浮云 提問者
_266 回復 飄雪的浮云 提問者
舉報
學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-11-25
這個sum=sum+x使用的是累加原理.
首先定義一個浮點數類型的變量sum,它的值是0.0 , 通過for循環的遍歷,它從list中每取一次值,就跳出循環一次,直到取完為止.(如果不懂這句話的意思,請在循環下自行添加print x,就會發現它打印的是list中所有的元素,而且每個元素都自動分行打印,表示取出來一個元素,就打印了一次.)
現在來說sum=sum+x, x每次都會得到不同的值, 變量sum加上x并把這個加完的值賦給等號左邊的sum,此時的sum就擁有了當前的值. 進入下一次循環的時候,擁有當前值的sum會再次加x的值,并把新的值繼續賦給sum,直到list所有元素遍歷完成.
舉個例子 : 求元素的和. list中有L=[1,2,3,4], 定義一個變量, 就叫 he = 0, 使用循環for x in L:? he=he+x, print he??? 第一次循環的時候, he+x 就相當于 0+1, 此時he的值就是1,它得到了x的第一次循環的元素. 進入第二次循環, x此時的值成了2,? 那么? he+x 就相當于 1+2, he的結果就被賦值成為3.? 依此類推. 最后he的值就是list中所有元素的和.
至于sum為什么定義成0.0 , 主要是因為最后print求的是平均值. 如果你需要平均值保留小數位,就得用浮點型的變量存數值. 當然,你也可以把sum定義成0, 不過最后sum/4一定會返回一個整數值. 也就是說, 定義成0.0 代表的是浮點數,定義成0,最后結果就一定是舍棄小數位的整數.
感謝看完,希望對您有幫助. 都是新手,共同學習吧.
2016-11-23
sum 是一個局部變量,0.0是個浮點型數據大小為0,因為后邊有除法,為了避免系統自動取整,所以要把數據變為浮點型
2016-11-20
據我的理解是,那個0.0并不是數學上的0.0,而是一種賦值的語句,這個的意思是把sum的值+x的值再得出新的sum值。在這個題的前面應該有關于初始sum具體是多少的吧?
2016-11-20
我的理解來看,sum只是一個變量,它指向它此刻存放數據的地方,也就是存放0.0的位置,然后下面那句就是把這個變量指向的數據拿出來做+x的操作,也就是將0.0再加上x,然后操作完了之后又將其放回了原來的位置。