Python 函数参数的类型

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 一、函数传参的方式
  • 二、函数参数的类型
    • 1.普通形参
    • 2.缺省形参
    • 3.不定长元组形参
    • 4.不定长字典形参
    • 5.上述四种参数的先后顺序


一、函数传参的方式

1、位置传参
按照形参的位置顺序将实参的值传递给形参

2、关键字传参
指定相应的函数形参名给与实参

代码如下(示例):

def student(name, age, height):
	print("学生的姓名为:" + name)
	print("学生的年龄为:" + age)
	print("学生的身高为:" + height)

# 调用函数
# 1、位置传参
student("小明", "18", "170")
# 2、关键字传参
student(age="18", name="小明", height="170")

1、位置传参运行结果
Python 函数参数的类型_第1张图片
2、关键字传参运行结果
Python 函数参数的类型_第2张图片

二、函数参数的类型

1.普通形参

def student(name, age, height):
	print("学生的姓名为:" + name)
	print("学生的年龄为:" + age)
	print("学生的身高为:" + height)

# 参数 name, age, height 均为普通形参

2.缺省形参

定义:在函数定义的时候,给形参一个默认值,这个形参就是缺省参数。
注意:缺省参数要写在普通参数的后面。
特点:在函数调用的时候,如果给缺省参数传递实参值,使用的是传递的实参值,如果没有传递,则使用默认值。

def student(name, age, height=170):
	print("学生的姓名为:" + name)
	print("学生的年龄为:" + age)
	print("学生的身高为:" + str(height))

# 参数 height 为缺省参数
# 参数位置(普通形参,缺省参数)

Python 函数参数的类型_第3张图片

3.不定长元组形参

在形参前面加上 1 个 * (*args)号,该形参变为不定长元组形参,可以接受所有的位置实参,类型是元组

def student(name, age, *args, height=170):
    print("学生的姓名为:" + name)
    print("学生的年龄为:" + age)
    print("学生的身高为:" + str(height))
    print("喜欢的幸运数字:%s" % args)


# 参数 args 为不定长元组形参,height 为缺省形参
student("xiao", "18", (18, 19, 20))
print("*" * 20)
student("xiao", "18", (18, 19, 20), height=180)

# 参数位置(普通形参,不定长元组形参,缺省形参)

Python 函数参数的类型_第4张图片

4.不定长字典形参

在形参前面加上 2 个 **(**kwargs)号,该形参变为不定长字典形参,可以接受所有的关键字实参,类型是字典

def student(name, age, *args, height=170, **kwargs):
    print("学生的姓名为:" + name)
    print("学生的年龄为:" + age)
    print("学生的身高为:" + str(height))
    print("喜欢的幸运数字:%s" % args)
    print(kwargs)

# 参数 args 为不定长元组形参,height 为缺省形参,kwargs 为不定长字典形参
student("xiao", "18", (18, 19, 20), a=4)

# 参数位置(普通形参,不定长元组形参,缺省形参,不定长字典形参)

Python 函数参数的类型_第5张图片

5.上述四种参数的先后顺序

(普通形参,不定长元组形参,缺省参数,不定长字典形参)


你可能感兴趣的:(python,开发语言)