运算与分支
一、定义变量和给变量赋值的原理
1.python定义变量的时候,需要先申请内存,内存的申请多大看数据的大小,然后再将数据保存再变量中。
2.重新给变量赋值的时候,会从重新申请内存,新的申请同样看数据的大小。
1、数学运算符
+(加法) -(减法) *(乘法) /(除法) %(求余,取模) //(整除) **(幂运算) print(1 + 2) print(3 + 2 - 5) print(2 * 3) print(6 / 3) print(6 % 4) print(234 // 23) print(23 ** 2)
1.1 、取整数的低位数
num = 123 print(num % 10) # 3 余数为 3 print(num % 100) # 23 余数为 23 print(num // 10) # 12 整除为12 print(num // 100) # 1 整除为1
1.2 、整除 // (向下取整)
print(5 // 2) # 2 print(3.4 // 2) # 1.0 print(-5 // 2) # -3
1.3、幂运算 **
print(3 ** 2) # 9 print(9 ** (1/2)) # 3.0 print(2 ** (-3)) # 0.125
2.比较运算符:
<(小于) >(大于) <=(小于等于) >=(大于等于) ==(等于) !=(不等于)
2.1 、 所有比较运算的结果都是布尔值(True、False)
print(10 < 50) # True print(10 != 34) # True print(23 >= 56) # False print(23 == True) #True
3.逻辑运算符
and # 逻辑运算符 or # 逻辑或运算 not # 逻辑非运算
3.1、and
True and True # True True and False # False False and True # False False and False # False
# 如:输入一个数90给num,判断是否同时被3和5整除。 num = 90 print(num % 3 == 0 and num % 5 == 0)
#当绩效为4.0;分数为:90分以上可以获得奖学金。 goa = float(input('亲输入你的绩效:')) score = float(input('亲输入你的分数:')) print('是否可以获得讲学金:',goa >= 3.5 and score > 90)
3.2、or
应用场景:用于一个条件满足就可以,相当于生活中的或者。
运算规则:条件1 or 条件2 - 满足一个为True就为TTrue or True # True True or False # True False or True # True False or False # False
# 练习:判断v是不是数据类型 v = '89' print('是否是数字:',type(v) == int or type(v) == float)
3.3、 not(非逻辑运算)
应用场景:对一个条件进行否定 ,当一个条件正向写很多的很复杂,反向却很简单的时候。 运算规则: not 条件 print(not(True)) # False
4 .赋值运算符
赋值运算符: = 、 += , -=, *=, /= , //= ,**=
1.所有赋值运算符的功能都是将数据直接或者间接储存到一个变量中,不会产生结果
#变量 赋值符号 数据
#重要的结论:赋值运算 没有结果# 2. 复合运算符 # 变量 += 数据 - 将变量中的数据取出来和后面的数据进行加法,再给变量 # 注意:变量必须是已经赋值的变量。
#比如: a = 123 a += 12 print(a) a %= 3 print(a) a /= 5 print(a) a += 234 print(a) a //= 12 print(a) a **= 3 print(a) a /= 56 print(a)
4.1、运算符的优先级
数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
数学运算符: ** > * / % // > + -
先算括号里面
5.分支结构
1. 流程控制 - 程序执行方式
1) 顺序结构 - 代码从上往下依次执行,每条语句执行一次
2) 分支结构(if) - 根据条件选择执行或者不执行相关操作
3) 循环结构 - 让代码重复执行
##### 1、if但分支:满足条件就执行某条件,如果不满足就不执行 num = int(input('请输入一个数:')) if num % 2 == 0: print('偶数:',num)
2、if双分支结构 : 满足条件执行某个条件,不满足执行另一个条件。
num = 23 if num % 2 == 0: print('偶数') else: print('奇数')
3、多分支结构:根据不同的条件做不同的事情
age = int(input('请输入你的年龄:')) if age < 12: print('儿童') elif age < 18: print('少年') elif age < 28: print('青年') elif age < 40: print('壮年') elif age <= 60: print('中年') else: print('老年') print('青年') elif age < 40: print('壮年') elif age <= 60: print('中年') else: print('老年')