甜萝 发表于 2023-2-4 12:46

关于 位置参数 默认参数 可变参数 的见解

本帖最后由 paypojie 于 2023-2-4 12:57 编辑

位置参数顾名思义就是按照位置传递参数 位置参数在函数调用的时候 是必须要传递的
默认参数就是参数有默认值 在函数调用的时候 实际参数是可传可不传 可变参数就是可以在调用函数时传递可变数目的参数

示范例子
# *arguments必须在**keywords的前面 也就是说 **name必须跟随在*name的后面
# *name会接收一个元组 其中包含除了已有形参列表以外的所有位置参数的形参 **name接收一个字典 其中包含除了已有形参相对应的关键字参数以外的所有关键字参数
def func(a,b=1,*arguments,**keywords):
    print(a)
    if b != 1:
      print(b)

    for arg in arguments:
      print(arg)

    for kw in keywords:
      print(keywords)

可以通过以下的形式调用
func(1)   # 只提供必需的参数 这会打印1
func(1,2)   # 提供必需的参数以及一个可选参数 打印1和2
# 位置参数必须在关键字参数前面 不能对同一个形参重复传递实参
func(1,2,3,d=4)   # 提供全部的参数 打印 1 2 3 4


QZMASE 发表于 2023-2-4 13:51

Python官方文档,你能学到更多
https://docs.python.org/zh-cn/3/tutorial/controlflow.html#more-on-defining-functions

甜萝 发表于 2023-2-4 13:56

QZMASE 发表于 2023-2-4 13:51
Python官方文档,你能学到更多
https://docs.python.org/zh-cn/3/tutorial/controlflow.html#more-on-defi ...

我就是在官方文档学的 这篇帖子是个人对学过的某一部分内容的总结
页: [1]
查看完整版本: 关于 位置参数 默认参数 可变参数 的见解