默认参数在函数定义时用=设置,调用时不传参则使用默认值,如greet(name, message="你好");适用于配置、可选行为等场景,但需注意默认值只计算一次,避免使用可变对象作为默认值,且带默认值的参数必须位于无默认值参数之后。

Python 默认参数是在定义函数时为参数指定一个默认值,这样在调用函数时如果不传该参数,就会使用这个默认值。这种方式让函数调用更灵活,尤其适用于某些参数经常使用相同值的场景。
默认参数的基本语法
在函数定义中,使用 = 为参数设置默认值:
def greet(name, message="你好"): print(f"{message}, {name}!")greet("小明") # 输出:你好, 小明!
greet("小红", "再见") # 输出:再见, 小红!
上面例子中,message 是一个默认参数,不传时使用 "你好"。
默认参数的常见用途
默认参数适合用于配置项、可选行为等:
立即学习“Python免费学习笔记(深入)”;
传媒企业网站系统使用热腾CMS(RTCMS),根据网站板块定制的栏目,如果修改栏目,需要修改模板相应的标签。站点内容均可在后台网站基本设置中添加。全站可生成HTML,安装默认动态浏览。并可以独立设置SEO标题、关键字、描述信息。源码包中带有少量测试数据,安装时可选择演示安装或全新安装。如果全新安装,后台内容充实后,首页才能完全显示出来。(全新安装后可以删除演示数据用到的图片,目录在https://
- 设置重试次数:
def request(url, retries=3) - 指定输出格式:
def log(msg, level="INFO") - 控制是否启用功能:
def process(data, debug=False)
注意事项和陷阱
使用默认参数时要注意以下几点:
- 默认值只计算一次:如果默认值是可变对象(如列表、字典),多次调用会共享同一个对象:
print(add_item("a")) # ['a']
print(add_item("b")) # ['a', 'b'] —— 不是预期结果!
正确做法是使用 None 作为默认值:
def add_item(item, lst=None): if lst is None: lst = [] lst.append(item) return lst默认参数的位置要求
带默认值的参数必须放在所有无默认值参数的后面:
# 正确 def func(a, b=2, c=3): pass错误!语法错误
def func(a=1, b, c):
pass
基本上就这些。合理使用默认参数能让函数更简洁易用,但注意别在默认值中使用可变对象。










