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

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

這兩個程序的運行區別在哪里?

http://img1.sycdn.imooc.com//5964ba220001d92001600084.jpg

http://img1.sycdn.imooc.com//5964ba22000111ed02230118.jpg

第一個程序,輸出結果為持續不斷地輸出元素1,這是因為沒有對元素a進行改變。那為什么第二個程序sum不是連續的輸出75這個結果那?而是進行了迭代相加,差別在哪里那?

正在回答

6 回答

第一個程序,相當于兩層循環,首先是for循環,a=1,下來執行while循環,1<4永遠成立,是一個死循環,所以一直輸出1.

第二個程序單層for循環,每循環一次,將sum+a的值賦給sum,第一次循環a的值是75,sum初始值0.0,所以第一次循環sum值為75.0,第二次sum值為167.0......以此類推。


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

qq_蘇格拉沒有底_14 提問者

非常感謝!
2017-07-12 回復 有任何疑惑可以回復我~

我想了很久,可能是這個原因。對于FOR語句來說,出來的元素如果沒有進行處理,而只是做了條件判斷,那么出來的就永遠還是第一個元素

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

第一個程序,我的猜測是你要循環輸出L這個list中的數字,for循環本身已經進行了一次循環,當a得值是1的時候,1<4恒成立,會造成程序跑不動報錯,需要輸出L中的數,直接print a就可以。

第二個程序,正是遍歷了每一個數,然后sum = sum + a 這句話讓這里L中所有的數字相加了,最后輸出sum / 4相當于計算list中所有數的和再除以4

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

第一個程序是死循環,a=1時while無限循環一直輸出1

第二個程序不存在這個問題

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

while 沒有break的跳出條件,在while a<4里一直循環出不來

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

第二個程序輸出是在循環完成之后,只輸出一次,注意看縮進

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

舉報

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

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

進入課程

這兩個程序的運行區別在哪里?

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

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

幫助反饋 APP下載

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

公眾號

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