| 1. 位置参数(Positional) |
def func(a, b): |
func(1, 2) |
最基础。实参数量必须与形参一致,且顺序严格对应。 |
| 2. 默认参数(Default) |
def func(a, b=10): |
func(1)``func(1, 20) |
可选参数。调用时若不传值,则使用定义时的默认值。 |
| 3. 可变位置参数(*args) |
def func(*args): |
func(1, 2, 3) |
收集多余的位置参数。将所有未匹配的位置参数打包成一个元组 (Tuple)。 |
| 4. 关键字参数(Keyword) |
def func(a, *, b): |
func(1, b=2) |
强制指名。在 * 后的参数,调用时必须使用 key=value 形式指定。 |
| 5. 可变关键字参数(**kwargs) |
def func(**kwargs): |
func(a=1, b=2) |
收集多余的关键字。将所有未匹配的关键字参数打包成一个字典 (Dict)。 |
| 6. 类型提示参数(Type Hinting) |
def func(a: bool | None = None): |
func(True)``func(None) |
现代写法 (Python 3.10+)。1. | 表示联合类型 (Union)。2. bool | None 意为“要么是布尔值,要么是空值”。3. 主要用于静态类型检查,运行时通常不影响传参逻辑。 |