Python18之函数定义及调用,注释

一、函数定义

  def 函数名(形参1,形参2...):

    函数体

    return 返回值         (可以返回任何东西,一个值,一个变量,或是另一个函数的返回值,如果函数没有返回值,可以省略return语句)

二、函数文档概念

  在Python中将函数体内首行字符串作为函数文档,字符串中对函数的功能和参数的含义进行说明,可以使用函数名加成员操作符跟上__doc__的形式返回这个字符串以备使用者查看,也可以通过help(函数名)形式直接打印除这个字符串

1 def function():
2     '这是函数文档说明,不是定义的字符串'
3     print("这是一首简单的小程序!")
4 
5 >>> print(function.__doc__)
6 这是函数文档说明,不是定义的字符串
View Code
 1 >>> def function():
 2     """这是函数文档说明,不是定义的字符串"""
 3     print("这是一首简单的小程序!")    
 4 >>> print(function.__doc__)
 5 这是函数文档说明,不是定义的字符串
 6 
 7 
 8 >>> def function():
 9     "这是函数文档说明,不是定义的字符串"
10     print("这是一首简单的小程序!")
11 >>> print(function.__doc__)
12 这是函数文档说明,不是定义的字符串
13 
14 
15 >>> def function():
16     '这是函数文档说明,不是定义的字符串'
17     print("这是一首简单的小程序!")    
18 >>> print(function.__doc__)
19 这是函数文档说明,不是定义的字符串
20 
21 
22 >>> def function():
23     """这是函数文档说明,不是定义的字符串"""
24     print("这是一首简单的小程序!")
25 >>> help(function)
26 Help on function function in module __main__:
27 
28 function()
29     这是函数文档说明,不是定义的字符串
30 
31 >>> def function():
32     '这是函数文档说明,不是定义的字符串'
33     print("这是一首简单的小程序!")
34 >>> help(function)
35 Help on function function in module __main__:
36 
37 function()
38     这是函数文档说明,不是定义的字符串
View Code

三、关键字参数

  当函数定义时形参比较多时,调用函数时实参要与形参一一对应,所以这时我们可能会把实参和形参的顺序弄乱,所以,使用关键字参数可以有效地避免这一情况,调用时直接把实参值赋给相应的形参变量,这时候就不需要顺序一一对应了。

  格式:函数名(形参2=实参2,形参1=实参1)

 1 def function(name,action):
 2     print("我的名字:%s"%name)
 3     print("我会%s"%action)
 4 
 5 未使用关键字参数:
 6 function('','zz')
 7 我的名字:跑
 8 我会zz
 9 
10 使用关键字参数:
11 function(action='',name='zz')
12 我的名字:zz
13 我会跑
View Code

四、默认关键字参数

  在函数定义时,我们给形参赋初值,这样在调用的时候,不赋实参,函数也可以运行

 1 def function(name='柯珂柯珂',action='fly'):
 2     print("我的名字:%s"%name)
 3     print("我会%s"%action)
 4 
 5     
 6 >>> function()
 7 我的名字:柯珂柯珂
 8 我会fly
 9 >>> function('zz','')
10 我的名字:zz
11 我会吃
View Code

五、收集参数

  1、收集参数在函数定义时,在参数前面多加一个  *(星号),表示该参数变量是一个元组类型,;

  2、当*不在所有参数的后面,不需要收集的参数,需要使用关键字指定,* 是不会收集带关键字的参数的;

  3、当需要收集带关键字的参数时,可以在定义函数时,在形参的前面使用  **(双星号),这样收集的参数会作为字典类型

 1 def function(*name,action):
 2     print(name)
 3     print("我会%s"%action)
 4     
 5 >>> function(1,2,3,4,5,6,action = 'fly')
 6 (1, 2, 3, 4, 5, 6)
 7 我会fly
 8 >>> def function(**name):
 9     print(name)
10 
11 >>> function(a = '柯盛涛',b = '柯珂柯珂',c = 12306)
12 {'a': '柯盛涛', 'b': '柯珂柯珂', 'c': 12306}
View Code
原文地址:https://www.cnblogs.com/ksht-wdyx/p/11327904.html