一、运算符
1、算数运算符
1)基础运算
除法,即使是整数,也会保留一位小数
2)取余数:%
除法只取余数部分
num1=2 num2=5 num3=4
3)整除: //
除法只取整数部分
num1=2 num2=5 num3=4
4)幂等运算
2的4次方
5)一些特殊用法
字符串相加
字符串不能和int类型相加
在控制台里,log和print()是同级的,在控制台里的展示顺序是无法确定的,
字符串与int类型相乘
整型+浮点型
整型+布尔值
true和false是区分大小写的,只有大写才是布尔型
2、比较运算符
大于: >
小于: <
等于: == (=是赋值,==才是等于)
不等于: !=
大于等于: >=
小于等于: <=
比较运算符的返回结果:True或者False
3、赋值运算符
当你定义变量的时候,有重复的名字,以最后的结果为准,变量的重定义
tips:print()字符串后面是可以用英文逗号 , 或者 加号+(只能拼接str)进行拼接,这两种方式进行打印输出的。
4、逻辑运算符
1)与运算:and 同真为真,有假为假
所有的逻辑均为True,最终结果才为True
一个为False,结果必为False
2)或运算:or 同假为假,有真为真
所有的逻辑均为False,最终结果才为False
一个为True,结果必为True
3)非运算:not not True not False
比较运算符优先于逻辑运算符,先做比较,再做逻辑运算
优先级:not > and > or
所以运算顺序是 False or True =True(遵循优先级顺序)
而不是 从左到右依次:False or True and True=true and true(自己最开始理解的)
优先级:算数运算符>比较运算符>逻辑运算符
5、成员运算符--用于做断言等数据处理
只有完全一模一样才行,类似不行,打乱顺序也不行,空格也是字符串
1不是100的成员
因为100,不能拆成1。数字类型不能做成员运算。不能拆开看
T不在布尔类型里
布尔类型不能做成员运算。不能拆开看
二、条件分支
1、单向分支
逻辑:如果,那么。
tips:python是靠缩进来控制代码块的。缩进的代码归属于上面未缩进的代码。
if 条件判断(运算、逻辑):
print('结果')
如果条件判断为True,就执行 if 下面的代码块,如果为False,就跳过if 以及if 下面的代码块执行。
1)逻辑值比较
2)字符串有值是true
3)字符串无值是false
4)if True
5)if False
2、双向分支
逻辑:如果,那么。否则,,,
语法结构:
if 条件判断:
if里面的代码块
else:
else里面的代码块
如果满足if的条件,就执行if的代码块,否则就会执行else里面的代码块
1)执行if
2)执行else
3、多向分支
逻辑:如果,那么;否则如果,否则
语法结构:
if 条件判断 :
if里面的代码块
elif 条件判断 :
elif里面的代码块
elif 条件判断 :
elif里面的代码块
... ...
else:
else里面的代码块
如果满足if的条件,就执行if的代码块,
否则就会就会去依次判断elif的条件是否满足,
满足的话就执行elif里面的代码块,
如果都不满足,就走else
username = input("请输入你的用户名:")
if username == "admin":
print("欢迎admin管理员登录系统!")
elif username == "root":
print("欢迎root管理员登录系统!")
elif username == "普通用户":
print("欢迎普通用户登录系统!")
else:
print("你不是系统管理员,不允许登录!")
4、if 条件判断
逻辑:
理论上来说:只要你的条件结果返回为bool值就行
比较运算符:> < ==
逻辑运算符:and not or
成员运算符:in not in
数学运算符: + - * /
布尔值:True False
1)数学运算
2)成员运算
3)数学运算,0为false
必须把num1进行整数型化,如果是num1 = input('请输入数字')的话。属于用字符串和数字做减法,不能减。
不做整型转化的话
5、if 的嵌套
不满足if ,不执行if里的代码块,password没有输值,也没有定义,所以会报错。
三、循环
1、while循环
循环:让某段代码去反复执行,循环的次数(由循环的条件判断)
语法结构:
while 条件判断:
while里面的代码块
只要条件为True,那么就会反复去执行while里面的代码块
当while里面的【代码块执行结束的时候】,就会去【再次判断while的条件】 --
如果条件恒定为True,陷入死循环
如果条件不为True,那么就终止循环,执行循环外面往下的代码
避免死循环的形成
改变循环的判断条件,打断循环,让他不恒定
if 条件分支,只判断一次,执行一次。while循环,循环判断,为true则循环执行while内代码块。
1)布尔类型,循环恒定
while True:
print("欢迎来到python的课堂!")
2)比较运算,打破循环
a=0、1、2、3、4、5 (a<6 == a=6时打破循环)
3)数学运算+布尔
例子
2、关键字避免死循环
1)continue
continue:中断当前循环,直接去判断while条件 (可以理解为,走到这一步,就不往下走了,再次去判断条件,重新开始循环)
解析:普通流程,while满足条件,执行循环,满足外层if,然后满足里层if,然后执行a +=5,两次循环下来,a=10打破循环
continue起作用
解析:while满足条件,执行循环,满足外层if,然后满足里层else,然后遇到continue,直接打断往下执行,不会执行a +=5。继续开启while循环,此时a 还是等于5 <10,然后再满足外层if,然后满足里层else,然后遇到continue,直接打断往下执行,不会执行a +=5。继续开启while循环,此时a 还是等于5 <10,然后再满足外层if,然后满足里层else,然后遇到continue,直接打断往下执行,不会执行a +=5。继续开启while循环,,,,只要一直执行里层的else就一直循环往复
2)break
break:终止整个循环,不去往下执行,也不去判断while循环条件了 (可以理解为,走到这一步,while循环就结束了)
解析:a<10,满足条件,开启循环,不满足外层if条件判断,直接执行else,遇到break,打破循环。