怎么做
  1. 题面里的虚线方框就是要填的空
  2. 点候选项,它会填进当前高亮的那个空
  3. 点已填好的空,可以把选项取回来重选
  4. 全部填满后「提交」才会亮起
卡住了就点右下角的 👩‍🏫 问 AI 老师,她会给提示但不直接给答案。

默认参数、关键字参数与返回 None

👁️ 24 人浏览 💬 0 人评论 ❤️ 添加收藏

二级考函数,考的都是细节。先看一遍本关要用的写法:

  • 默认参数:def pay(price, n=1),调用时不给 n 就用 1。有默认值的参数要写在后面。
  • 按名字传(关键字参数):pay(8, n=3),写了名字就可以不管顺序。
  • 可变参数:def stat(*nums),调用时给几个都行,在函数里 nums 是一个元组。
  • return a, b 返回的是元组 (a, b),可以用 x, y = f() 接住;函数没有 return,调用结果是 None。
  • 函数里给变量赋值,这个变量就是局部变量;要改函数外面的变量,先写 global 变量名。
  • lambda x: x * 2 是一个没有名字的小函数;常和 map(函数, 序列)、filter(函数, 序列)、sorted(序列, key=函数) 一起用。map / filter 的结果要套 list(…) 才能看到内容。
  • 函数调用自己叫递归,必须有一个不再调用自己的基例。

预测下面程序的输出:

def pay(price, n=1, rate=1.0):
    return price * n * rate

def stat(*nums):
    return min(nums), max(nums)

def hello():
    print('hi')

print(pay(8))
print(pay(8, rate=0.5, n=3))
r = stat(3, 9, 1)
print(r, type(r))
x = hello()
print(x)

pay(8, rate=0.5, n=3) 的结果是【0】;stat 返回的 r 是【1】类型;最后一行输出【2】。

请登录后作答。
去登录
👩‍🏫
AI
💬 题目评论
🔒 登录并作答后可看讨论