python的if判断和循环语句(while循环和for循环)
1.if判断
1.1if判断的基本格式
if 判断条件:
满足条件做的事
score = input("请输入成绩:")
if score == '100':print("你真棒")
if score == '60':print("还要加油")
使用input输入默认类型为字符串类型
1.2运算符
1.2.1比较运算符== != > < >= <=
== 比较的是两个变量的值是否相等,相等的话就返回True(真),不相等返回False(假)
!= 比较的是两个变量的值是否相等,相等的话就返回False(假),不相等返回True(真)
1.2.2逻辑运算符and(与) or(或) not(非)
and 左右两边都符合才为真
a = 'haha'
b = 'heihei'if(a == 'haha' and b == 'heihei'):print("都在笑")
or左右两边只需要一边符合就为真
not表示相反的结果
print(not 3>9)
#输出结果为True
1.2.3三目运算符(三元表达式)
为真结果 if 判断条件 else 为假结果
a = 5
b = 8
if a<=b:print("a小于等于b") #为真结果
else:print("a大于b") #为假结果print("a小于等于b") if a<=b else print("a大于b")
2.if-else(和C语言基本一样)
2.1 if-else
if 条件:
满足条件要做的事情
else:
不满足条件要做的事情
2.2 if-elif
if 条件1:
事情1
elif 条件2:
事情2
elif 条件3:
事情3
2.3if-elif-else
if 条件1:
事情1
elif 条件2:
事情2
else:
不满足条件要做的事情
注意点:elif一般和if一起使用否则出错;else一般用在最后及所有条件都不满足时使用
2.4 if 嵌套
if 条件1:
事情1
if 条件2:
事情2
else:
不满足条件要做的事情
ticket = True #True代表有车票 False代表没车票
temp = 38 #正常体温是36.3-37.2
#判断是否有车票
if ticket == True:print("进站")if 36.3 < temp < 37.2:print("回家")else:print("隔离")
else:print("不进站")
3.while循环和循环嵌套
3.1格式
while 条件:
循环体(条件满足时段做的事情)
改变变量
(注意:没有改变变量,条件一直满足,就会一直循环下去,一直执行)
死循环
while True:
循环体(要循环做的事情)
(条件只写True(或1,或非0值(不是0都为真),说明一直为真,就会一直执行,从而形成一个死循环;若条件只写False则不执行)
3.2while循环应用
计算1+2+3+...+100的和
a = 1
sum = 0
while a<101:sum += aa += 1
print("结果为:",sum)
3.3while循环嵌套
while 条件1:
条件1满足时段做的事情1
条件1满足时段做的事情2
......
while条件2:
条件2满足时段做的事情1
条件2满足时段做的事情2
......
注意:缩进决定层级,严格控制缩进,最好自动缩进
4.for循环与break、continue关键字
4.1for循环(迭代循环)
作用:可以完成循环的功能,依次取出对象中的元素。
基本格式:
for 临时变量 in 可迭代对象:
循环满足条件时执行的代码
注意:冒号和缩进必须注意!!!
str = 'hellopython' #定义一个字符串
#可迭代对象就是要去遍历取值的整体,现在的话只需要记住字符串时可迭代对象
for i in str: #i是临时变量,可以随便写,i是常规写法print(i)
4.2range(),用来记录循环次数,相当于一个计数器
range(stare,stop,step)
for i in range(1,6): #从1开始,到6-1结束,遵循包前不包后原则,[)print(i)
包前不包后:包含开始位置数字,不包含结束位置的数字
range()里面只写一个数,这个数就是循环的次数,默认从0开始
写两个数,前面的数字代表开始位置,后面的数字代表结束位置
4.3for循环应用
计算1+2+3+...+100的和
sum = 0
for i in range(1,101):sum += i
print(sum)
相比之下for循环比while循环更简便一些也更常见。
4.4break和continue关键字
break中途退出,结束循环;continue结束当前循环,进入下一循环(都是专门在循环中用的关键字)
i=1
while i<=5:print(f"小红在吃第{i}个苹果")if i==3:print("吃饱了")break;i += 1
i=1
while i<=5:print(f"小红在吃第{i}个苹果")if i==3:print(f"吃到一只虫子,第{i}个苹果不吃了")i += 1continue;i += 1
注意:在continue之前一定要修改计数器,否则会陷入死循环
for i in range(5):if i == 3:continue #跳过3,结束了在3时的循环,继续执行下一个循环#break #i=3时,结束当前所在循环print(i)