掉进悬崖的小白,迈步发现控制语句泥潭,for和while无脑循环深陷,艰难爬出。

掉进悬崖的小白,发现控制语句泥潭,for和while无脑循环深陷,艰难爬出。。

三种基本控制结构:

顺序结构、选择(分支)结构、循环结构

顺序结构就是顺其自然,大道从简,所谓道可道,非常道。

选择结构:

if语句:


语法格式:
if 条件:
执行语句1
执行语句2

特性:
1.当条件为真时,语句块会执行,否则跳过不执行

2.可以嵌套任意层以构成更复杂的判断选择结构

注意:缩进来限定选择执行的语句块的范围
ps:
可以使用pass这个占位语句表示语句块结束
pass 不做任何事情,只表示占位
例:
if 条件:
语句
pass
pass后直接回车可以接续上一个代码块继续写代码
if-else语句
适配双分支语句
无论如何,必然会有一个分支执行

if-else语法:

if 条件:
条件为真执行的语句
else:
条件为假执行的语句

如果分支大于两个,可以使用多个if或者if-else嵌套,也可以使用if-elif-else语句

if-elif-else语法格式:

if 条件1:
条件1为真执行的语句
elif 条件2:
以上条件为假且条件2为真执行的语句
elif 条件3:
以上条件为假且条件3为真执行的语句
else:
以上条件全为假执行的语句

三元取值表达式

三元表达式:
功能类似用if else取值
只是分支取值的一种语法糖
语法糖:糖衣语法 程序的便捷写法

语法:值1 if 条件 else 值2
条件为真取值1 条件为假取值2

两种语法格式的比较:
以打折为例 参加就打九折 800以上打八折
data = 1000
if…else取值:
if data > 800:
data *= 0.8
else:
data *= 0.9
三元表达式取值:
data *= 0.8 if data > 800 else 0.9

循环结构:

while:先判断,后执行,循环执行0-n次

语法格式:
while 条件:
条件为真执行的语句
条件变化语句
若条件一直为真 循环将永无休止:死循环

for:用控制变量控制循环次数

for语法:i会从头至尾依次变换为range得到的数据
注意:i只是惯例,可以替换成别的标识符
for i in range([start,]end[,step]):
循环语句

需要一个前置技能:range([start,]end[,step])
用于限制控制变量的范围及步长
例如:
控制变量变化是:[0,n)使用range(3)即可得到0,1,2
控制变量变化是:[s(非0),n)使用range(1, 4)即可得1,2,3
控制变量变化是:[s,n)并且步长为3使用range(3, 10, 3)即可得到3,6,9
注意:
负数也是可以的:range(1, -2, -1):1,0,-1
倒序也可以:range(3, 0, -1):3,2,1

中断循环

break: 退出当前循环
continue:立即执行下一次循环

break:
在循环中,遇到break会立即退出并结束当前循环
continue:
在循环中,遇到continue会立即执行下一次循环,当次的后续语句会被忽略

使用技巧:

由于有了break,循环结束时无法判断循环是正常结束还是break结束 添加了如下语法:

for…else:

for i in range(s,e):
if 突然中断条件:
break;
else:
print(“正常终止”) # 表示不是break结束循环时执行的语句

while…else:

while 循环继续条件:
if 突然中断条件:
break;
循环继续条件变化
else:
print(“正常终止”) # 表示不是break结束循环时执行的语句

引入随机模块

import random

print( random.randint(1,10) ) # 产生 1 到 10 的一个整数型随机数
print( random.random() ) # 产生 0 到 1 之间的随机浮点数
print( random.uniform(1.1,5.4) ) # 产生 1.1 到 5.4 之间的随机浮点数,区间可以不是整数
print( random.choice(‘tomorrow’) ) # 从序列中随机选取一个元素
print( random.randrange(1,100,2) ) # 生成从1到100的间隔为2的随机整数

小白爬出泥潭写总结

选择语句是为了有条件的执行代码,循环语句是为了重复执行相同的代码。
当预先知道循环次数是选择for;当预先不知道循环次数选择while。
break和continue的作用。
多层循环的使用技巧。

1.程序的结构:顺序、选择、循环

2.选择:程序有了多路径选择的可能:
只有一条路可选:if
有两条路可选:if…else
有两条以上的路可选:if…elif…else

3.循环:复用代码 让程序员可以懒省事

预先不知道循环次数的循环:while 依靠break和条件进行终止
预先知道循环次数的循环:for 自行终止和break

4.循环的中断:中断当前循环 中断当次循环的(if…else)

5.特殊到一般的归纳法一定要掌握

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值