文章标题 原创 翻译 转载 文章内容 ``` # 位置参数,根据参数的传入顺序来赋值 def add(a, b): return a + b # 默认参数,n就是默认参数,调用函数的时候可以不传 # 默认参数必须写在后面且指向不变对象 def power(a, n=2): s = 1 for i in range(n): s *= a return s # 可变参数,可以传多个不定个数的参数,还可以在list和tuple变量前加一个*号进行传入 def print_log(*logs): s = '' for log in logs: if len(s): s += ' | ' s += log print(s) # 关键字参数,类似如可变参数关键字参数也可以接受多个不固定参数,区别是它的参数都有一个名称 # 可以将字典当做关键字参数传入,前提是变量前增加两个** def print_kw(**kw): for k, v in kw.items(): print(k, v) # 命名关键字参数,传参方式类似如关键字参数,但是参数名称和个数是固定的,也就是*号后面的参数 # 如果前面是可变参数,由于可变参数本来就有个*号,那么命名关键字参数的*号是可以省略的 def print_names(*, name, age): print(name, age) # 参数组合 # 参数定义的顺序必须是:必选参数、默认参数、可变参数、命名关键字参数和关键字参数 def f1(a, b, c=0, *args, **kw): pass def f2(a, b, c=0, *, d, **kw): pass # 通用参数,下面这种函数适用于任意参数的调用方式(可变参数和关键字参数组合) def f(*args, **kw): pass ``` 文章类别 Python Mobile Android Java Shell Life Database Bug Windows IOS Tools Boost Node.js Mac Product Tips C/C++ Golang Javascript React Qt MQ MongoDB Design Web Linux LLM ChatGPT RAG AI 提交