欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python 基础 _ 集合、函数参数

程序员文章站 2022-05-25 09:50:15
1.集合的运算在python中的集合和学校学的集合差不多。需要返回值赋值哦!#交集运算 &结果如下,不会影响原来的集合:#并集运算 |结果如下:##差集运算 -S1 里有哪些在S2中没有。 结果是 1 和2##异或集运算 ^ 即不相交的部分** 还有几个**2.可变对象每个对象都保存了三个数据举例: 对象中的value 可以改变。第一个是改对象中的一个value即id 为0的1 变10;而第二步是重新创建了新的a的对象,id 也随之变了。...

1.集合的运算

在python中的集合和学校学的集合差不多。
需要返回值赋值哦!
#交集运算 &
python 基础 _ 集合、函数参数

结果如下,不会影响原来的集合:
python 基础 _ 集合、函数参数

#并集运算 |

python 基础 _ 集合、函数参数
结果如下:
python 基础 _ 集合、函数参数

##差集运算 -

S1 里有哪些在S2中没有。 结果是 1 和2
python 基础 _ 集合、函数参数

##异或集运算 ^ 即不相交的部分
python 基础 _ 集合、函数参数
** 还有几个**

python 基础 _ 集合、函数参数
python 基础 _ 集合、函数参数

2.可变对象

每个对象都保存了三个数据
python 基础 _ 集合、函数参数

举例: 对象中的value 可以改变。python 基础 _ 集合、函数参数
第一个是改对象中的一个value即id 为0的1 变10;
而第二步是重新创建了新的a的对象,id 也随之变了。
python 基础 _ 集合、函数参数
python 基础 _ 集合、函数参数
总结
列表就是可变对象
python 基础 _ 集合、函数参数

python 基础 _ 集合、函数参数

python 基础 _ 集合、函数参数
这个a和b都不变
python 基础 _ 集合、函数参数
python 基础 _ 集合、函数参数

python 基础 _ 集合、函数参数
这个b都变化了,包括id
python 基础 _ 集合、函数参数

3. 函数 function

函数是干什么的? 注意,函数不能用关键字哦,

     函数简介: 函数也是个对象(function)
     函数用来保存一些可执行的代码,在你需要的时候,可以对这些语句进行多次调用。

python 基础 _ 集合、函数参数
python 基础 _ 集合、函数参数

fn()三次就是调用三次

函数的参数
@@ 在定义函数的事后,可以在函数后面的括号里面定义数量不等的形参,多个形参要以,隔开。
@@ 形参也叫形式上的参数,定义形参相当于在函数内部声明了变量,但是并没有赋值。

定义一个函数,可以用来求任意2个数的和

def s():
print(1+1)
s()
python 基础 _ 集合、函数参数

python 基础 _ 集合、函数参数

如果少了实参,报错如下
python 基础 _ 集合、函数参数
python 基础 _ 集合、函数参数
也叫做位置传参,因为是根据位置传对应。
python 基础 _ 集合、函数参数

python 基础 _ 集合、函数参数
python 基础 _ 集合、函数参数

##函数的传递方式
@@定义一个函数的时候是可以指定默认值的。
函数的传递方式分为两种:1. 位置传参。对应位置上的实参赋值给对应位置的形参
2.关键字传参。可以不按照定义的顺序去传递,更具参数名去传递。 两个方式可以混用。

python 基础 _ 集合、函数参数

位置传参python 基础 _ 集合、函数参数

实参的类型

时刻记住可变对象 ,可变列表的精髓 ,注意id变与不变。
python 基础 _ 集合、函数参数

python 基础 _ 集合、函数参数

不定长参数

例: 定义一个函数,求任意数的和。
位置数要对应 多了少了都不行,如下。
python 基础 _ 集合、函数参数
python 基础 _ 集合、函数参数

所以呢,我们用不定长参数,在定义函数时,可以在形参的前面加上一个*, 这个形参将会获取到所有的实参,而且它会将所有实参保存到一个元组当中。
python 基础 _ 集合、函数参数

运行结果如下:
python 基础 _ 集合、函数参数
python 基础 _ 集合、函数参数
python 基础 _ 集合、函数参数
如果不加最后的c=6 会报错,全部被*拿走了。
python 基础 _ 集合、函数参数

同理如下再举例*
python 基础 _ 集合、函数参数
下图指明,用了* 代表位置传递, 就不能处理下方的 关键字传递
python 基础 _ 集合、函数参数
两个星号 **来解决一切。

python 基础 _ 集合、函数参数

原理请见源码举例,这才是精髓
python 基础 _ 集合、函数参数

参数的解包
python 基础 _ 集合、函数参数
取 4 5 6 出来
python 基础 _ 集合、函数参数
用(*t)可以解决无数的对应取值,

运行结果是 a=4 b=5 c=6python 基础 _ 集合、函数参数
另类解包
python 基础 _ 集合、函数参数

  • 和** 区别,上方已经讲过了
  • 解决位置传递
  • *解决关键字传递

*总结本次
python 基础 _ 集合、函数参数
*python 基础 _ 集合、函数参数

本文地址:https://blog.csdn.net/Bill_82/article/details/107475911