变量与运算符:
命令规则:
字母、数字、下划线
不能以数字开头
python区分大小写
系统关键字:
系统关键字不能用于变量名
保留关键字:and if import….
Python中变量没有类型的限制,这是Python作为动态语言的特性
动态语言:???
变量的可变与不可变:
每个变量在内存中有一个存储的地址,当给变量b赋值了不同的变量空间,每次赋值 系统会给你开辟一个内存的空间让你存放
典例:
值类型 | 不可变 | int str tuple |
引用类型 | 可变 | list set dict |
实例2中a并没有指向一个新的列表,只是把列表的内容做了改变
即:实例1的a变量空间改变了,但是实例2的a变量空间没有改变
实例1图示:
实例2图示:
id()函数:
显示变量的内存地址
注:虽然字符串不可变,但是这里两个b已经表示不同的字符串了?
列表的可变与元组的不可变
追加列表中的元素
append()函数
访问嵌套列表中的元素
a[][][]
运算符
运算符包括:
算术、赋值、比较(关系)、逻辑、成员、身份、位运算符
运算符思维导图:
算术运算符
// | //除法只取结果的整数部分 |
/ | 真除 |
% | 取余 |
比较运算符
比较字符串大小:
不仅可以比较数字大小,字符串也可以比较大小,因为字符串可以转化为ASCII码来比较
ord()函数:将字符串转化为对应的ASCII码
运算结果:
>>> b =1
>>> b += b >= 1
>>> print(b)
2
>>> print(b>=1)
True
>>> int(True)
1
>>> b = b+1
逻辑运算符
运算规则与运算结果:先执行条件判断,决定返回该True或是False,然后返回一个对应true(或是false)的结果
例如:and or判断
and运算要执行到and后面的语句才能判定出结果,所以返回‘b’
or运算只需要判定出一个为真即可知道结果,该处执行到=前的语句就能判定出结果,所以返回‘a’
注:布尔类型可以做算术运算,布尔类型可以转化为其他数据类型
位运算符
转化为二进制然后进行比较
成员运算符
in not in
注:判定元素是否在字典中,匹配key不匹配value
身份运算符
如果两个变量取值相等,则is返回True,
is 和 ==的区别:
is比较的是两个变量的身份是否相等,==比较的是值是否相等
例子:1和1.0,集合比较
解释:集合具有无序性,所以a和b做==运算结果是相等的,但是集合有具有唯一性,a与b两个并不是同一个集合, 所以做is运算结果是false
集合元组比较
元组: | 从第一个元素开始比较,一一比较,到比较出结果为止 |
集合: | 因为集合的无序性,全部元素加在一起比较 |
对象的三个特征
Python里面一切皆是对象
id、value、type
特征 | 判定方式 |
id | is |
value | == |
type | isinstand |