06散列类型;运算符优先级
定义方法:
set() a = set({1,2,3})
{} a = {1,2,3}
定义空集合: a = set()
三种运算:
a = {1,2,3,4,5}
b = {4,5,6,7,8}
a & b 交集 {4, 5}
a | b 并集 {1, 2, 3, 4, 5, 6, 7, 8}
a - b 差集 {1, 2, 3}
b - a 差集 {8, 6, 7}
集合的方法:
增:
add()
update([]) 参数是可迭代对象
删除:
pop() 随机删除
remove() 指定删除
查:
isdisjoint 有交集返回False
issubset 判断是否包含于
issuperset 判断是否包含
字典:键(key)唯一,无序性,可变(值)
定义方法:
a = {'a':1,'b':2} 键值对形式
b = dict(a = 1,b = 2) 使用dict函数
修改和添加:
di[‘a’] = 2 直接赋值修改
di[‘b’] = 3 写入 键 和值 直接添加
增:
copy 就是复制一个新的字典
setdefault 有则查,无则增
a.setdefault('name') 定义一个 键 为 ‘name’ ,值为空
a.setdefault('name','zcm')
删:
clear() 全部删除
pop() 必备参数,参数为要删除的 键
pop(‘name’, 1) 键('name')不存在,返回1
popitem() 无参数,默认从后向前删除一个键值对
改:
update() 参数里面放一个字典 {} ,可以改,可以增
查:
get() 必备参数,参数为 键
get('name', 1) 键('name')不存在,返回1
keys() 无参数,查看所有 键
value() 无参数,查看所有值
items() 无参数,查看所有字典
其他方法:
fromkeys() 键为列表,生成不同键,相同值
例子:
c.fromkeys(['dd','f','e'],10){'dd': 10, 'e': 10, 'f': 10}
逻辑运算符
查看对象类型:
type()
isinstance()
实例:
a = 2 isinstance (a,int)True isinstance (a,str)False isinstance (a,(str,int,list)) # 是元组中的一个返回 True
True
比较运算符:
==
!=
如果有多个条件:
判断语句1 and 判断语句2
判断语句1 or 判断语句2
not 判断语句1
运算符优先级
** 幂运算
+、- 一元运算(正负号)
*、/、%,+、- 算术运算符
<、>、<=、>= 比较运算符
==、!= 比较运算符
=、%=、/=、-=、+=、*=、**= 赋值运算符
is、is not 身份运算符(用id判断)
in、not in 成员运算符(属于、不属于)
not > and > or 逻辑运算符
区分可变 不可变
讲要区分的数据类型 放在集合(set)里,不报错就是不可变的,报错就是可变的