高中生零基础学python(二)
发表时间:2020-10-18
发布人:葵宇科技
浏览次数:74
学习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的区分哦!
今天的学习就到这里吧!大家都早点休息!