1.集合的使用和运算
1.1 集合的使用
- in 和 not in
- len() 求集合的长度
- add() 向集合中添加元素
- update() 将一个集合中的元素添加到另一个集合中
- pop() 随机删
- remove() 删除集合中指定的元素
- s.clear() 清空
1.2 集合的运算
- 交集运算 &
- 并集运算 |
- 差集运算 -
- 异或集运算 ^ 集合里面不相交的部分
- 返回的是布尔类型
1 <= 检查一个集合是否是另一个集合的子集
2 < 检查一个集合是否是另一个集合的真子集
3 >= 检查一个集合是否是另一个集合的超集
4 > 检查一个集合是否是另一个集合的真超集
2.可变对象
- 每个对象都保存了三个数据
1.id(标识)
2.type(类型)
3.value(值) - 列表就是一个可变对象。
- a[0] = 10 (改的是对象里面的value)
这个操作是在通过变量去修改对象里面的值。
这个操作不会改变变量所指向的对象。 - a = [4, 5, 6] (改的是变量)
这个操作是在给变量重新赋值。
这种操作会让变量指向新的对象。
3.函数简介
- 函数简介:函数也是个对象(function)
函数用来保存一些可执行的代码,在你需要的时候可以对这些语句进行多次调用。
函数中保存的代码不会立即执行,需要调用函数的时候代码才执行。 - 语法
def 函数名([形参1,形参2,形参3…])
代码块 - 注意:函数名必须符合标识符的规范(可以包含字母、数字、下划线但是不能以数字开头)。
4.函数的参数
- 参数:分为形参和实参两种。在定义函数的时候,可以在函数后面的括号里面定义数量不等的形参,多个形参要以,隔开。
- 形参也叫形式参数,定义形参就相当于在函数内部声明了变量,但是并没有赋值。
- 实参也叫实际参数,如果函数在定义的时候,指定了形参,那么在调用函数的时也必须传递形参。 实参将会赋值给对应的形参,有几个形参就得传几个实参。
5.参数的传递方式
- 定义一个函数的时候是可以指定默认值的。指定了默认值之后,如果用户传递了参数则默认值不生效。如果用户没有传递,则默认值生效。
- 位置传参:位置参数就是将对应位置上的实参赋值给对应位置上的形参。
- 关键字参数:关键字参数可以不按照定义的顺序去传递,而是根据参数名去传递参数。
- 位置参数和关键字参数可以混合使用,必须将位置参数写到前面。
再举个例子:
6.实参的类型
- 实参可以传递任意类型的对象。
- 在函数中对形参进行复制,不会影响其他的变量。当我们通过形参去修改对象(value),会影响到所指向该对象的变量。
7.不定长参数
- 在定义函数的时候,可以在形参的前面加上一个*,这样这个形参将会获取到所有的实参,它会将这些实参保存到一个元组当中。
- 注意:带*的参数是可以和其他参数配合使用的,但是注意这种参数只能有一个。
- **可以接收其他关键字参数,它会将这些参数统一保存到一个字典当中。字典的key就是参数的名字,字典的value就是参数的值。
- 注意:** 形参也只能有一个,并且必须写在所有参数的后面。
8.参数的解包
- def fn3(*args)、 def fn4(**kwargs)
课堂复习
- 集合的使用
1 len() add() update() pop() remove() clear()
2 集合的运算:交、并、差、异或、子集、真子集、超集、真超集 - 可变对象
1 对象里面保存的三要素 id type value - 函数一
1 函数也是个对象、语法、调用
2 函数的参数:实参形参、函数的传递方式、不定长参数 *a **kargs、解包