學習python的第二天
大家好,現在我們接著昨天遺留的問題
a= input("weight:")
b= input("height:")
weight=float(a)
height=float(b)
bmi= weight/height**2
if bmi<18.5:
print("過輕")
elif 18.5<=bmi>=25:
print("正常")
elif 25<bmi>28:
print("過重")
elif 28<=bmi>=32:
print("肥胖")
else :
print("嚴重肥胖")
問題是在執行代碼的程序中,無論怎么輸入數值,得到的結果都只有過輕和正常兩種結果,
在論壇發帖后,有位熱心的碼友回復了我,原因竟然是,,,,,,

我的比較符號寫錯了,竟然兩邊都是≥號,估計我小學數學老師看見得揍死我,
新的知識
接下來,開始學習回圈陳述句
python的回圈有兩種for...in...和while
兩者的區別在哪里呢 ?
- 我們先來看
for...in...
例如,我想將我全班同學的名字依次列印出來,可是幾十個
print()恐怕要寫到地老天荒,這時候for...in...就派上用場了!
這里以我最親密的三位同學舉例
names = ["小紅","小明","李華"]
for name in names:
print(name)
執行這段代碼,會依次列印names的每一個元素:
小紅
小明
李華
所以for x in ...回圈就是把每個元素代入變數x,然后執行縮進塊的陳述句,
- 接下來是
while回圈
例如,我想計算10以內的偶數之和,可以用一個sum變數做累加
sum=0
n=10
while n>0:
sum=sum+n
n=n-2
print(sum)
結果正確
30
break
如果我們想提前結束程式,比如當sum>10的時候就結束,break陳述句可以辦到這件事情
sum=0
n=10
while n>0:
sum=sum+n
if sum>10:
break
n=n-2
print(sum)
OK,運行結果正確
18
可見break的作用是提前結束回圈,
continue
如果我們要列印從1~10的數字,但只列印奇數,該怎么做呢? 讓我們用
continue試試
n = 0
while n < 10:
n = n + 1
if n % 2 == 0: # 如果n是偶數,執行continue陳述句
continue # continue陳述句會直接繼續進行下一輪回圈,后面的print()陳述句不會執行
print(n)
結果沒有問題
1
3
5
7
9
可見continue的作用是提前結束這一輪回圈,并直接進行下一輪,
注意和break的區分哦!
今天的學習就到這里吧!大家都早點休息!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/182555.html
標籤:python
上一篇:Python極速上手教程
下一篇:Python爬蟲練習原始碼
