浅析python参数的知识点
作者:laozhang 发布时间:2022-12-16 01:39:32
标签:python,参数
python之参数,定义时小括号中的参数,用来接收参数用的,称为 “形参”
调用时小括号中的参数,用来传递给函数用的,称为 “实参”。
1、思考一个问题,如下:
现在需要定义一个函数,这个函数能够完成2个数的加法运算,并且把结果打印出来,该怎样设计?下面的代码可以吗?有什么缺陷吗?
In [8]: def num():
...: a=12
...: b=23
...: c=a+b
...: print(c)
为了让一个函数更通用,即想让它计算哪两个数的和,就让它计算哪两个数的和,在定义函数的时候可以让函数接收数据,就解决了这个问题,这就是 函数的参数
2、定义带有参数的函数
In [10]: def num1(a):
....: print(a)
....: In [11]: def num2(a,b):
....: c=a+b
....: print(c)
....: In [12]: def num3(a,b,c):
....: d=a+b+c
....: print(d)
3、调用带有参数的函数
In [13]: def num2(a,b):
....: c=a+b
....: print(c)
....:
In [14]:
In [14]: num2(1,2)
3
4、缺省参数
调用函数时,缺省参数的值如果没有传入,则被认为是默认值。
In [18]: def info(name,age=20):
....: print("name:",name)
....: print("age:",age)
....: In [19]: info(name='zcf')
name: zcf
age: 20
In [20]: info(age=21,name='zcf')
name: zcf
age: 21
5、缺省参数之注意:
带有默认值的参数一定要位于参数列表的最后面。
In [21]: def info(name,age=20,sex):
....: print(name)
....:
File "<ipython-input-21-099520322ee2>", line 1
def info(name,age=20,sex):
^
SyntaxError: non-default argument follows default argument
6、不定长参数
有时可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数,声明时不会命名。
语法:
def functionname([formal_args,] *args,**kwargs):
function_suite
return [expression]
加入星号(*)的变量args会存放所有未命名的变量参数,args为元组;
而加**的变量kwargs 会存放命名参数,即形如key=value的参数,kwargs为字典
7、
引用传参可变类型与不可变类型的变量分别作为函数参数时,会有什么不同吗?Python有没有类似C语言中的指针传参呢?Python中函数参数是引用传递(注意不是值传递)。对于不可变类型,因变量不能修改,所以运算不会影响到变量自身;而对于可变类型来说,函数体中的运算有可能会更改传入的参数变量。
引用传参可变类型与不可变类型的变量分别作为函数参数时,会有什么不同吗?Python有没有类似C语言中的指针传参呢?
以上内容就是关于python参数相关的知识点内容,感谢大家对脚本之家的支持。


猜你喜欢
- 一、决策树原理决策树是用样本的属性作为结点,用属性的取值作为分支的树结构。 决策树的根结点是所有样本中信息量最大的属性。树的中间结点是该结点
- 在之前给大家分享过这篇文章:CentOS 7.0下使用yum安装mysql的方法详解,小编觉得不够详细,今天给大家通过本文给大家做个补充,感
- 本文介绍基于Python语言,实现对多个不同Excel文件进行数据读取与平均值计算的方法。首先,让我们来看一下具体需求:目前有一个文件夹,其
- 题目:一个txt文件中已知数据格式为:C4DC4D/mayaC4DC4D/suC4D/max/AE统计每个字段出现的次数,比如C4D、may
- 不管是写自定义标签还是过滤器,第一件要做的事是创建模板库(Django能够导入的基本结构)。创建一个模板库分两步走:
- random是用于生成随机数的,我们可以利用它随机生成数字或者选择字符串。•random.seed(x)改变随机数生成器的种子seed。一般
- 可能很多人遇到过这个错误,当使用setup.py安装python2.7图像处理模块PIL时,python默认会寻找电脑上以安装的vs2008
- 如何显示数据库的结构?<html><head><meta http-equiv="Cont
- 现在的电脑差不多都是固态硬盘了,速度很快,但容量不会太大,经常会出现磁盘空间不足的情况,怎么办,删除那些不重要的最大的文件是最有效的办法。那
- 1. 问题截图:(8000端口被占用)2. 第一种是可能会打开了多个运行窗口右键关闭即可:3. 第二种是在你运行python的主机上查询出p
- 前几天写了一个ajax的,总感觉代码比较多,今天晚上又得写了一下,感觉代码还是比较多,但还好的是,比较通用。谁有办法优化一下当然好。&nbs
- 本文实例讲述了flask框架视图函数用法。分享给大家供大家参考,具体如下:flask框架 视图函数当中 各种实用情况简单配置1 建立连接2
- 前言个人感觉骨架提取提取的就是开运算过程的不可逆。一.算法步骤1.算法步骤首先上一下比较官方的算法步骤:1.获得原图像的首地址及图像的宽和高
- 1. 根据字符串名称 动态调用 python文件内的方法eval("function_name")(参数)2. 根据字符
- 我们通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务。当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服
- 思路:利用栈实现代数式中括号有效行的的检验:代码:class mychain(object): #利用链表建立栈,链表为父类 length=
- 目的获得一个首尾不含多余空格的字符串方法 可以使用字符串的以下方法处理:string.lstrip(s[, chars])Return a
- 开门见山自动化测试过程中,一般测试结果都会以邮件的形式发送给相关人员,那么,在Python中,如何编写代码将邮件发送给对应的用户?同时,发送
- ECMAScript5为数组定义了5个迭代方法。每个方法都接收两个参数:要在每一项上运行的函数和(可选的)运行该函数的作用域对象(即影响th
- “博客就像一本书”这话其实几个月前深圳FB时就有扯到,这也不是什么新概念,也许本身就应该是这样。打个比方,当你拿到一本未看过的书时,理论上你