【循序渐进学Python】Python中的函数(三)——函数文档和参数

【循序渐进学Python】Python中的函数(三)——函数文档和参数

函数文档说明(doc文档)

  • 函数文档指在函数开头起一定说明性的一段文字
  • 解释说明代码–注释
  • 解释说明函数–函数的文档说明

案例:

def func(a):
    '''雷霆嘎巴
           无情哈拉少
           一giao我里giao
           小鸟伏特加
           整这高
       '''
    print(123)
    return a


func(1)
# ctrl+q也可以查看函数文档
help(func)
# 最后输出的结果为:
# 123
# Help on function func in module __main__:
# func(a)
#     雷霆嘎巴
#     无情哈拉少
#     一giao我里giao
#     小鸟伏特加
#     整这高

参数

函数参数

作用:

  • 进一步的提高了一个没有参数函数的复用性

定义格式:

形参: 形式参数(有多少个, 看需求)

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

pass

调用格式:

实参: 实际参数(有多少个, 看形参)

函数名(实参1, 实参2, ...)

案例:

定义函数的时候,参数还没有具体的值,它的作用是占据位置

def funFa(name):  # 形参
    print("我的名字是%s" % name)
    # 调用函数
    # 调用以后参数有了具体的值


funFa("张三")  # 实参

缺省参数

概念:

如果一个函数有参数, 而且这个参数设置了默认值, 称为缺省参数

格式:

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

pass

调用函数:

  • 如果缺省参数位置没有传入,实参使用默认值
  • 如果缺省参数位置传入实参,实参会把默认值修改掉
  • 下次在调用该函数的时候, 缺省参数还是默认值

作用:

  • 简化了函数的调用
  • 如果一个函数 有缺省参数, 那么缺省参数后面必须也是缺省参数

案例:

def info(name, age=45, sex="男"):
    print("我的名字是:%s,今年%d岁,性别%s!" % (name, age, sex))


info("张三")
info("张三", 78)
info("张三", 45, "女")
最后控制台输出的结果是:
我的名字是:张三,今年45,性别男!
我的名字是:张三,今年78,性别男!
我的名字是:张三,今年45,性别女!

不定长参数:

单星号元组形参

格式:
def func(*args):

pass
特点:
  • 调用函数的时候不知道传入多少个实参
  • 位置参数调用函数
  • 函数内部使用下标索引获取实参的数据
单星号元组形参案例:
# 定义单星号元组参数函数
def func(*name):
    print("进入星号元组函数")
    print(name)


# 如果没有参数,那么就是一个空列表
func()
# 如果输入实参,函数自动把实参打包放入列表,然后传入
func("张三")
func("李四", 15)


# 输出的结果:
# 进入星号元组函数
# ()
# 进入星号元组函数
# ('张三',)
# 进入星号元组函数
# ('李四', 15)

双星号字典参数

格式:
def func(**kwargs):

pass
特点:
  • 调用函数的时候不知道传入多少个实参
  • 关键字参数调用函数
  • 函数内部通过key获取实参的数据
双星号字典参数案例:
# 定义一个双星号字典参数函数
def func(**name):
    print("进入双星号字典参数函数")
    print(name)


func()
# 双星号字典参数对应的是关键字参数
func(a="张三")
func(a="李四", b=15)
# 最后输出的结果:
# # 进入双星号字典参数函数
# # {}
# # 进入双星号字典参数函数
# # {'a': '张三'}
# # 进入双星号字典参数函数
# # {'a': '李四', 'b': 15}

不定长参数说明:

  • 位置形参,单星号元组形参,双星号字典形参可以混用
  • 如果混合使用,则顺序必须为位置形参,星号元组形参,双星号字典参数形参,顺序不能乱

猜你喜欢

转载自blog.csdn.net/XVJINHUA954/article/details/107806462
今日推荐