Python 入门
默认参数与关键字参数
掌握默认参数值和关键字参数
- 学会给参数设置默认值
- 用关键字参数改变传参顺序
- 理解参数顺序规则
默认参数
给参数默认值,调用时可以不传:
示例代码(可运行)
Python 0%
关键字参数
调用时用 参数名=值,可以不按顺序:
示例代码(可运行)
Python 0%
⚠️参数顺序规则
位置参数必须在关键字参数前面。默认参数必须放在普通参数后面。
预测输出
def power(base, exp=2):
return base ** exp
print(power(3))
print(power(2, 10))混合使用
示例代码(可运行)
Python 0%
找 Bug默认参数必须放在普通参数后面,不能放前面。
def greet(greeting="你好", name):
print(f"{greeting},{name}")
填空题填写空白处的代码
def greet(name, greeting="你好"):
print(greeting, name)
greet("小红", ="早上好")
选择题
def f(a, b=1, c=2): f(10) 中 b 和 c 的值是?
选择题
def f(a, b=10, c=20): 调用 f(1, c=30) 后 b 的值是?
资深工程师加餐
底层原理 · 大厂视角 · 工程经验,点卡片展开
Python 里整数、字符串甚至函数都是对象,堆在内存里;变量不是装东西的盒子,而是一张贴在对象上的「名字标签」(引用)。id(x) 看对象身份,is 比身份、== 比值。CPython 会缓存 -5~256 的小整数,所以 a=1;b=1 时 a is b 为 True,但 a=300;b=300 未必。结论:判断值是否相等永远用 ==,判断是不是 None 才用 is。
挑战任务
默认参数
简单+50 XP
写 power(base, exp=2) 计算 base 的 exp 次方。
默认参数
Python 0%
2 个测试用例
课后作业
购物计算器
中等+20 XP
写 total(price, count=1, discount=1) 返回总价。
购物计算器
Python 0%
1 个测试用例