Python中有三大基本语句, 通过这三大基本语句支撑起了Python程序的业务逻辑的完成.
三大基本语句:顺序语句、分支语句、循环语句。
if语句总结
if语句用来进行判断,其使用格式如下:
if 要判断的条件:
条件成立时,要做的事情
示例1:
age = 30
print("------if判断开始------")
if age >= 18:
print("我已经成年了")
print("------if判断结束------")
运行结果:
------if判断开始------
我已经成年了
------if判断结束------
示例2:
age = 16
print("------if判断开始------")
if age >= 18:
print("我已经成年了")
print("------if判断结束------")
运行结果:
------if判断开始------
------if判断结束------
注意
以上2个demo仅仅是age变量的值不一样,导致结果却不同;能够看得出if判断语句的作用:就是当满足一定条件时才会执行代码块语句,否则就不执行代码块语句。
注意:代码的缩进为一个tab键,或者4个空格
if-else的语法格式
想一想:在使用if的时候,它只能做到满足条件时要做的事情。那万一需要在不满足条件的时候,做某些事该怎么办呢?
答:使用 if-else 语句
if 条件:
满足条件时要做的事情1
满足条件时要做的事情2
满足条件时要做的事情3
...(省略)...
else:
不满足条件时要做的事情1
不满足条件时要做的事情2
不满足条件时要做的事情3
...(省略)...
示例:
ticket = 1 # 用1代表有车票,0代表没有车票
if ticket == 1:
print("有车票,可以上火车")
print("终于可以见到Ta了,美滋滋")
else:
print("没有车票,不能上车")
print("亲爱的,那就下次见了")
结果1:有车票的情况
有车票,可以上火车
终于可以见到Ta了,美滋滋
结果2:没有车票的情况
没有车票,不能上车
亲爱的,那就下次见了
if…elif…else…语句格式
if xxx1:
事情1
elif xxx2:
事情2
elif xxx3:
事情3
#上图编程说明:
当xxx1满足时,执行事情1,然后整个if结束
当xxx1不满足时,那么判断xxx2,如果xxx2满足,则执行事情2,然后整个if结束
当xxx1不满足时,xxx2也不满足,如果xxx3满足,则执行事情3,然后整个if结束
案例:
score = 77
if score>=90 and score<=100:
print('本次考试,等级为A')
elif score>=80 and score<90:
print('本次考试,等级为B')
elif score>=70 and score<80:
print('本次考试,等级为C')
elif score>=60 and score<70:
print('本次考试,等级为D')
elif score>=0 and score<60:
print('本次考试,等级为E')
if-elif-else用法
if 性别为男性:
输出男性的体重
...
elif 性别为女性:
输出女性的体重
...
else:
第三种性别的体重
...
说明:
当 “性别为男性” 满足时,执行 “输出男性的体重”的相关代码
当 “性别为男性” 不满足时,如果 “性别为女性”满足,则执行 “输出女性的体重”的相关代码
当 “性别为男性” 不满足,“性别为女性”也不满足,那么久默认执行else后面的代码,即 “第三种性别的体重”相关代码
注意:
elif必须和if一起使用,否则出错
else 一般用在最后,即所有条件都不满足时使用
if嵌套的格式
if 条件1:
满足条件1 做的事情1
满足条件1 做的事情2
if 条件2:
满足条件2 做的事情1
满足条件2 做的事情2
- 说明 * 外层的if判断,也可以是if-else * 内层的if判断,也可以是if-else * 根据实际开发的情况,进行选择
if嵌套的应用
示例:
ticket = 1 # 用1代表有车票,0代表没有车票
knief_length = 9 # 刀子的长度,单位为cm
if ticket == 1:
print("有车票,可以进站")
if knief_length < 10:
print("通过安检")
print("终于可以见到Ta了,美滋滋<font color=Coral size=5>~")
else:
print("没有通过安检")
print("刀子的长度超过规定,等待警察处理...")
else:
print("没有车票,不能进站")
print("亲爱的,那就下次见了")
结果1:ticket = 1;knife_length = 9
有车票,可以进站
通过安检
终于可以见到Ta了,美滋滋<font color=Coral size=5>~
结果2:ticket = 1;knife_length = 20
有车票,可以进站
没有通过安检
刀子的长度超过规定,等待警察处理...
结果3:ticket = 0;knife_length = 9
没有车票,不能进站
亲爱的,那就下次见了
结果4:ticket = 0;knife_length = 20
没有车票,不能进站
亲爱的,那就下次见了
while循环语句:
计算1~100的累加和(注意:包含1和100)
参考代码如下:
i = 1
sum = 0
while i <= 100:
sum = sum + i
i += 1
print("1~100的累加和为:%d" % sum)
计算1~100偶数的累加和(注意:包含1和100)
参考代码如下:
i = 1
sum = 0
while i <= 100:
if i % 2 == 0:
sum = sum + i
i+=1
print("1~100的累加和为:%d" % sum)
if-else语法结合while语法的循环
i=1
while i < 5:
age=input()
age=int(age)
if age < 18:
print("未成年")
elif 18 < age < 60:
print("成年")
else:
print("老年")
i += 1
for循环语法
for 临时变量 in 列表或者字符串等可迭代对象:
循环满足条件时执行的代码
示例
name = 'itheima'
for x in name:
print(x)
运行结果如下:
i
t
h
e
i
m
a
for语法+if语法循环
name = "hello"
for x in name:
print(x)
if x == 'o':
print("Hello world!")
#for和while比较
for i in range(5):
print(i)
#效果等同于 while 循环的:
i = 0
while i < 5:
print(i)
i += 1
break语法:立刻结束break所在的循环
普通的循环示例如下:
name = 'itheima'
for x in name:
print('----')
print(x)
else:
print("==for循环过程中,如果没有执行break退出,则执行本语句==")
运行结果:
----
i
----
t
----
h
----
e
----
i
----
m
----
a
==for循环过程中,如果没有break则执行==
带有break的循环示例如下:
name = 'itheima'
for x in name:
print('----')
if x == 'e':
break
print(x)
else:
print("==for循环过程中,如果没有执行break退出,则执行本语句==")
运行结果:
----
i
----
t
----
h
----
break在while循环的使用
普通的循环示例如下:
i = 0
while i<5:
i = i+1
print('----')
print(i)
else:
print("==while循环过程中,如果没有执行break退出,则执行本语句==")
运行结果:
----
1
----
2
----
3
----
4
----
5
==while循环过程中,如果没有break则执行==
带有break的循环示例如下:
i = 0
while i<5:
i = i+1
print('----')
if i==3:
break
print(i)
else:
print("==while循环过程中,如果没有执行break退出,则执行本语句==")
运行结果:
----
1
----
2
----
continue语法
continue在for循环的使用
带有continue的循环示例如下:
name = 'itheima'
for x in name:
print('----')
if x == 'e':
continue
print(x)
else:
print("==while循环过程中,如果没有break则执行==")
运行结果:
----
i
----
t
----
h
----
----
i
----
m
----
a
==while循环过程中,如果没有break则执行==
continue在while循环的使用
带有continue的循环示例如下:
i = 0
while i<5:
i = i+1
print('----')
if i==3:
continue
print(i)
运行结果:
----
1
----
2
----
----
4
----
5
注意:
##break/continue只能用在循环中,除此以外不能单独使用
##break/continue在嵌套循环中,只对最近的一层循环起作用