一、变量
1.1 变量的语法
语法格式: 变量名 = 数据
变量名的命名要求:
要求:1)标识符 2)不能是关键字
规范:1)见名知义 2)满足PEP8的命名规范(所有的字母都小写,多个单词用下划线连接)
3)不能使用系统提供的函数名、类型名、模块
= 赋值符号,固定写法
数据 任何有结果的表达式
1.2 变量的使用和修改
变量中保存的数据能在python中做什么操作,变量也能做同样的操作
比如:x=10 y=20
print(10+20)
print(x+y)
两个的结果一样
python中支持给同一个变量a赋不同的值
比如:
a=10
print(a) 此时的a=10
a=30
print(a) 此时的a=30
1.3 同时给多个变量赋值
1)同时给不同的变量赋不同的值
语法:变量1, 变量2, ..., 变量n = 数据1, 数据2, ...,数据n
比如:x1, x2, x3 = 1,2,3
2)同时给不同的变量赋相同的值
语法: 变量1 = 变量2 = ... = 变量n =数据
比如:x = y = z = 3
1.4 在python中给变量赋值的原理
变量在申请内存地址时的时候,内存空间的大小由数据的大小决定
可以使用id函数来查看数据的储存地址
语法:id(变量)
二、python中支持的运算符
2.1 数学运算
数学运算符:+(加) -(减) *(乘) /(除) //(整除) %(取余) **(幂运算)
重点强调:%和//的应用
% 1)取整数的个位或者低几位 2)判断一个数能否被另外一个数整除
比如:
123取该数的个位数:123 % 10就可以取到3
// 取长数字的最高位
比如:
123取该数的最高位:123 // 100 就可以取到1
2.2比较运算
比较运算符:>(大于) <(小于) >=(大于等于) <=(小于等于) ==(等于) !=(不等于)
注意:1.所有比较运算符的结果都是布尔值(bool只有True和False两种情况)
2.数字数据不能与文本数据作比较
python 中支持比较运算的连写来表示范围
2.3逻辑运算
逻辑运算符:and(与) or(或) not(非)
1)and 语法:
(对象1 and 对象2 and ... and 对象n) 只有当操作对象的bool值都为True结果才为True,
否者为False
2)or 语法:
(对象1 or 对象2 or ... or 对象n) 只要当操作对象中有一个的bool值都为True结果都为 True,只有全为False结果才为False
3)not(取反)
not 对象
如果对象为True,结果就为False.
如果对象为False,结果就为True.
2.4赋值运算
赋值运算符:=、+=、-=、*=、/=、%=、//=、**=
1)所有的赋值运算都是用来给变量赋值的
2)所有的赋值运算符的左边都必须是变量,复合赋值运算符左边的变量必须是已经赋值过的变量
3)所有赋值运算符的右边都可以是任意有结果的表达式
2.5上述运算符的优先级
数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
2.6位运算
1. 位运算的特点:效率高、内存消耗少
2. 位运算运算符: &(按位与)、|(按位或)、^(异或)、~(按位取反)、>>(右移)、<<(左移)
所有的位运算都是直接操作数据在内存中存储的补码
1) &(按位与)
数字1 & 数字2 两个都是1结果就是1,否则结果0
01101101(补) & 10101100(补) -> 00101100(补)
特点:某一位上的数和1与可以对这一位上的数进行保存,和0与会对这一位进行置0操作
2) |(按位或)
数字1 | 数字2 只要有一个是1结果就是1,两个都是0结果才是0
3) ^(异或)
数字1 ^ 数字2 不同为1,相同为0
4) ~ (按位取反)
~ 数字 0变1,1变0
5) >>(右移),<<(左移)
数字1 >> 数字2 数字1 // 2**数字2
数字1 << 数字2 数字 * 2**数字2
应用:高效率、快速的乘2或者2的次方数