1.集合
创建:{} set([]) 注意:创建空的集合要用set() 特点:元素唯一,无序 运算: & 交集 | 并集 - 差集 方法: s.add(x) 添加单个元素 s.update() 添加多个元素 s.remove() 移除元素 s.clear() 清空集合
2.字典
创建: {key:value} (大括号创建字典的键时要加引号)
dict(key=value) (括号里赋值方式,名字=对象,不要引号)
字典里的键和值用‘:’隔开,一对键和值组成一个项,项和项之间用‘,’隔开
特点:
键唯一,重复会被重新复制
无序
添加和取值
cidt[key]=value key存在则修改值,没有则添加
属性方法
.update({ }) 在字典中添加多个项
.items() 返回字典的各个项
.keys() 返回字典的键
.values() 返回字典的值
.get(k) 如果键k在,返回键k的值,不存在则返回None
.get(k,x) 如果键k在,返回键k的值,不存在则返回x
.pop(k) 返回并移除键k所对应的元素,不存在则抛出异常
.pop(k,x) 返回并移除键k所对应的元素,不存在则返回x
总结:
key唯一,故可以是数字,字符串,元组
总结:
可变对象:list set dict
不可变对象: str tuple
3.运算符
算术运算符:+ ,- , *, /, %, **,// 赋值运算符:= ,+=,-=, *=,/=,%=, **= 比较运算符:==,!=, >, <, >=,<= 成员运算符:in , not in 身份运算符:is , is not 判断两个名字是否指向同一个对象,当id相同时返回True(==比较运算是判断的值) 逻辑运算符:and,or,not and(与) 两个条件都满足时才返回True or(或) 有一个条件满足了就返回True not(非) 取反 计算顺序:默认地,运算符优先级表决定了哪个运算符在别的运算符之前计算。然而,如果你想要改变它们的计算顺序,你得使用圆括号 结合规律:运算符通常由左向右结合,即具有相同优先级的运算符按照从左向右的顺序计算 ''' ** #幂运算 + - * / % #算术运算符 < > <= >= #比较运算符 == != #比较运算符 = %= /= -= += *= **= #赋值运算符 is is not #身份运算符 in not in #成员运算符 not > and > or #逻辑运算符 '''
4.作业
# 1.有两个列表 x = [1,2,3,'a','b','c'] y = ['a','b','c']找出x列表中在y 中也有的元素
x = [1,2,3,'a','b','c']
y = ['a','b','c']
x = set(x)
y = set(y)
x&y
#{'b', 'a', 'c'}
# 2.新建一个字典,用3种方法往字典里面插入值;用 4 种方法取出values,用2种方法取出key
##用3种方法往字典里面插入值
di ={}
di['name'] ='马文海'
di.setdefault('age',22) #当key存在,就返回原来的value。 不存在时,添加。返回新的value
'''aa = di.setdefault('hello') ''' # value没写,默认返回None
di.update({'name':123,'fff':55}) # key存在 就会更新。 不存在就会添加
## 4 种方法取出values
####1
di['name']
####2
di.get('name','not find key error')
####3 values()
bb = di.values()
bb = list(bb)
bb[0]
####4
list(di.items())[0][1]
di.setdefault('c')
di.popitem() #随机删除
##2种方法取出key
####1
list(di.keys())[0]
####2
list(di.items())[0][0]
list(di.items())[-1][0]
# 3.定义我们学过的每种数据类型,并且注明,哪些是可变,哪些是不可变的.
# 数值类型 int float bool complex 。 不可变的
#int
a = 1
#float
b = 1.1
#bool
f = False
t = True
#complex
c = 2 + 2j
# 序列类型 list tuple str
#list
li = [1,2,3,4,5] #list可变的
#tuple
tu = (1,2,3,4,5) # tuple 不可变的
#str
s1 = 'a' # str 不可变的
s2 = "a"
s3 = ''' aaa'''
# 非序列 set dict
#set
se = {1,2,4,5} # set 可变
#dict
di = {'a':1,'b':2} # dict可变