python之参数,定义时小括号中的参数,用来接收参数用的,称为 “形参”
调用时小括号中的参数,用来传递给函数用的,称为 “实参”。
1、思考一个问题,如下:
现在需要定义一个函数,这个函数能够完成2个数的加法运算,并且把结果打印出来,该怎样设计?下面的代码可以吗?有什么缺陷吗?
1
2
3
4
5
6
7
8
9
|
in [ 8 ]: def num():
...: a = 12
...: b = 23
...: c = a + b
...: print (c)
|
为了让一个函数更通用,即想让它计算哪两个数的和,就让它计算哪两个数的和,在定义函数的时候可以让函数接收数据,就解决了这个问题,这就是 函数的参数
2、定义带有参数的函数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
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、调用带有参数的函数
1
2
3
4
5
6
7
8
9
10
11
12
13
|
in [ 13 ]: def num2(a,b):
....: c = a + b
....: print (c)
....:
in [ 14 ]:
in [ 14 ]: num2( 1 , 2 )
3
|
4、缺省参数
调用函数时,缺省参数的值如果没有传入,则被认为是默认值。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
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、缺省参数之注意:
带有默认值的参数一定要位于参数列表的最后面。
1
2
3
4
5
6
7
8
9
10
11
12
13
|
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、不定长参数
有时可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数,声明时不会命名。
语法:
1
2
3
4
5
|
def functionname([formal_args,] * args, * * kwargs):
function_suite
return [expression]
|
加入星号(*)的变量args会存放所有未命名的变量参数,args为元组;
而加**的变量kwargs 会存放命名参数,即形如key=value的参数,kwargs为字典
7、
以上内容就是关于python参数相关的知识点内容,感谢大家对服务器之家的支持。