控制流程
1.比较运算符:(大小等)
符号运算 描述
> 大于运算符
< 小于运算符
== 等于运算符
>= 大于等于运算符
<= 小于等于运算符
大于、小于、等于运算符和数学一样用来判断大小关系。
大于等于、小于等于则用于判断左边数值是否大于/小于或等于右边的数值。
———————————————————————————————————————————
2.逻辑运算符(或与非)
符号运算
and 与运算符,用于比较两个或多个运算符返回结果是否全部为True。
or 或运算符,用来比较两个或多个运算符返回结果是否其中一个为True。
not 非运算符,用来判断如果比较值是False,则会返回相反的值True。
拓展:
短路机制——>用于节省时间
and运算符,如果在判断里面有一个判断的返回值为False,就不会继续往下面判断了,直接返回False。
or:如果第一个已经返回True,则不会继续往下判断了,直接返回True。
打个比方:
and:如果你的语文和数学都大于90分,妈妈请你吃肯德基。
or:如果你的语文或数学大于90分,妈妈请你吃沙县小吃。
not:如果你的语文和数学都小于90分,妈妈请你爱吃的大嘴巴子。
3.控制流程
顺序控制:一般程序按照顺序流程进行控制。
例如:开始——>代码1——>代码2
a="我饿了"
b="要吃饭"
print(a)
print(b)
输出结果:我饿了 要吃饭
分支控制:就是根据判断语句的条件,选择进行不同的代码。
例如:我去超市买可乐,咨询售货员是否有无冰可乐。如果有,那我直接沟通,购买可乐。
如果没有,那么我就回家。
if(是否)
格式:
if 条件语句)
代码块
例如:
a=input("你要不要华硕天选4?\n")
if a=="不要":
print("我要vivo X90Pro")
if else:(或者)
格式:if 条件语句:
代码块
else:
代码块
其实就是二选一。
判断是否为真:True,如果判断为真就是运行[if]结构里的代码块,为假就运行else里的代码块。
比如:我们去过马路遇到红绿灯,红绿灯为红色则不能通过马路;反之,红绿灯为绿色则可以通过马路。
a==input("请输入信号灯颜色\n")
if a=="绿色":
print("可以通过马路")
else:
print("不能通过,请耐心等待")
if elif else 其中(elif的意思是否则是否,全称是else if,但是python可不能写成这样。)
格式:
if 条件语句:
代码块
elif 条件语句:
代码块
else:
代码块
这是属于多分支控制流程,可判断多个条件,每个条件都有独立的代码块,也按照上面的流程进行判断。
比如:高考分数录取学校,根据不同分数选择不同学校。
代码如下:
result=int(input("请输入你的分数\n"))——>这里为了方便我们用一个换行。
result=600
if result>654:
print("清华或北大")
elif result>590:
print("广东金融大学或者广东海洋大学")
else:
print("请选择其他学校或者复读")
运行结果如上图
———————————————————————————————————————————
循环控制:
for:
例如下图:没有完成作业的罚抄一百遍作业。
格式:for 变量 in 可迭代序列:就是用一个变量来获取一个有序序列里面的数值。通常用在遍历中。
代码块
可迭代对象:字符串、列表、元组、字典、集合。
a="1,2,3,4,5"
b=(1,2,3,4,5)
c=[1,2,3,4,5]
d={1,2,3,4,5}
e={"1","2","3","4","5"}
for i in range:
print("字典",i)
其中 i 是取值的变量,也是用来取可迭代变量的值。
range( ):
格式:range(start,end,length),就是我们说的产生的自然数,默认间距为1,可以手动调整间距。
end是设置终点的位置,不是输出end值,类似于切片。
拓展:print(end="/n")默认换行输出
for i in range(101):
print(i,end=",")
输出0~100。
如果我们要从1~100进行输出只需要将括号内的101前面加上1,并用逗号隔开。
如果我们要求输出特定的数据呢?
例如:输出1~100的所有偶数。
因为100也是偶数,所以end值为101。
输出奇数就只需要将左边的2—>1即可。
for i in range(1,101,1):
print(f'已经抄写{i}遍作业了')
输出结果如图所示:从1~100进行输出。
while:
和for的作用一样,也是用来循环获取里面的数值,while是 如果满足就会一直循环,循环到不满足条件才会跳出循环。
格式:while 条件语句
代码块
注意:条件语句中一定要有一个False返回值,如果一直为True会一直循环下去,就是死循环。
例如:
a=1
while a<=100:
print(f'已经抄写{a}遍作业了')
a+=1
#死循环
while 1:
print("1",end=",")
output:1……………………..1(无限个1)
终止循环:
continue与break——>结束循环
二者都有跳出循环的意思,continue是暂时跳出循环,后者是可以终止全部循环状态。
类比:上班起来,一般调节好闹钟。一般调早一点,如果选择休息5分钟再起,就是continue,暂时停止铃声。
如果准点起床,关闭闹钟,就是break。
例子:
a=0
while a<=100:
a+=1
if a==34 or a==57 or a==85 or a==92:
continue
if a==50
break:
print(f'已经抄写了{a}遍作业了')
运行此代码,你会发现34、57、85、92所对应的数据会不存在于输出结果中。而且,它只是暂时停止输出对应的数据值,并不会影响其他的数据输出。
那么,break如何运用呢?
这里我们为了便于观察,将前面的if所对应的条件进行注释,当输出到50遍的时候,停止输出。
嵌套循环
一般是双嵌套循环,就是我们两个循环嵌套起来。
例如:两个for循环或两个while循环,或者一个for+while循环。
例子:我们打印三角形
#我们是需要一个循环控制 * 输出,一个循环控制空格输出。
for i in range(1,10): #控制行数
for j in range(1,i): #控制*数量
print("*",end=" ")
print(" ")
for i in range(n): ——>肯定是有固定次数的
pass
while 条件: ——>1.循环次数固定
pass 2.循环次数不确定
while True:——>3.如果不设置
pass