认识变量和定义(创建)变量
1)什么是变量 - 变量是用来保存数据的(在程序中使用数据的时候,不要直接使用,而是先用变量把数据保存起来,然后通过使用变量来使用数据)
2)定义变量(创建变量) - 将数据保存到变量中
‘’’
语法:
变量名 = 数据
说明:
a.变量名 - 由程序员自己命名;
要求:是标识符,不是关键字
规范:见名知义;
不使用语言的函数名,类名和模块名;
所有的字母都小写,多个词之间用下划线隔开(也可以使用驼峰式命名)
b. = 赋值符号:固定写法
c.数据 - 可以是任何有结果的表达式,例如:具体某个类型的数据,有结果的运算表达式
命名规范:
dog_name:下划线式命名
dogName:驼峰式命名
3.使用变量
使用变量的本质就是使用变量中保存的数据
x = 100
y = 200
print(x,y)
print(x + 10)
4.重新给变量赋值
xx = 100
print(xx)
5.同时定义多个变量
1)同时定义多个变量赋予相同的值
变量名1 = 变量名2 = 变量名3 = 数据
x1 = x2 = x3 = 100
2)同时定义多个变量赋于不同的值:变量名1,变量名2,变量名3 = 数据1,数据2,数据3
y1,y2,y3 = 10,20,30
应用:
变量1,变量2 = 变量2,变量1
Python变量的申请
1.python定义变量不需要写类型 - Python定义变量申请内存的时候,内存申请多大看数据需要多大,不看类型
2.重新赋值的时候会重新申请内存
3.为什么python可以直接计算 - 申请内存的时候会先提前计算存储需要多大的内存,需要多大就申请多大
补充:
1获取内存地址函数 : id()
数据运算
1.加减乘除
print(5 + 2) # 7
print(5.0 - 2) # 3.0
print(5 * 2) # 10
print(5 / 2) #2.5
print(4 / 2) #2
除法的结果一定是浮点数(/)
2.取余/取模 %
print(5 % 2) # 1
print(-10 % 3) # 2
原因:取余是所得的整数部分向小的数取整
-10 / 3 = -3.333 ,整数部分向小取余为-4
-10 - (-3 * 4) = -10 - (-12) = 2
应用场景
判断一个数是否是偶数
3.整除//
x // y - 求x除以y的商,商向小取整
#应用场景
1.在知道两个数能整除的情况下,获取整形的商
print()
2.整除去掉低位数,保留高位数
321 // 10 =32
321 // 100 =3
4.幂运算**
print(2**3) = 2^3 = 2的3次方
补充:格式自动美化: Ctrl + alt + l
比较运算符:>(大于) <(小于) ==(等于)
比较运算符的结果只能是Bool值,只能是做比较,但可以是各种类型的值做比较
例如:
是否能被整除,
是否是浮点数,
是否成年
2.python运算符可以连写表示范围
判断num是否在0-1范围内
0 <= num <= 1
0 <= num and num <= 1
06 逻辑运算符
and(逻辑与运算) or(逻辑或运算) not(逻辑非运算)
逻辑运算符用来连接条件的
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wxQ6xefC-1649848611358)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20220413160349087.png)]
运算规则:not / !=
not只对单一条件进行判断,反转判断
num = 23
写法1:not(num % 3 == 0)
写法2:num % 3 != 0
not独特用法:当正向写条件很多但是反向写很简单,则用not将条件反向处理
实例:判断num是否不能同时被3和7整除.
写法一:
先判断满足条件的情况:
1.能被3整除但不能被7整除: num % 3 == 0 and num % 7 != 0
2.能被7整除但不能被3整除:num % 3 ! = 0 and num % 7 == 0
3.既不能被3整除也不能被7整除:num % 3 != 0 and num % 7 != 0
(num % 3 == 0 and num % 7 != 0) or (num % 3 ! = 0 and num % 7 == 0) or num % 3 != 0 and num % 7 != 0)
写法二:
反向写条件:not(num能同时被3和7整除)
not(num % 3 == 0 and num % 7 == 0)
not(num % 3*7 == 0)
赋值运算符
赋值运算
= ,+=,-=,*=,/=,%=,//=,**=
a += 1 ====== a = a+1
**b 这里的变量必须是已经赋值过的变量 **
所有的赋值运算都没有结果
运算符优先级
数学与算符 > 比较运算符 > 逻辑运算符 > 赋值运算符(最低)
数学运算符:** > * , / , % , // > +, -
括号优先级最高,不确定是时候加括号
赋值运算
= ,+=,-=,*=,/=,%=,//=,**=
a += 1 ====== a = a+1
**b 这里的变量必须是已经赋值过的变量 **
所有的赋值运算都没有结果
运算符优先级
数学与算符 > 比较运算符 > 逻辑运算符 > 赋值运算符(最低)
数学运算符:** > * , / , % , // > +, -