在 Python 中,匿名函数通常指的是使用 `lambda` 关键字定义的函数。下面对每个选项进行分析:
A: **定义匿名函数的关键字是def**
- **错误**。匿名函数是使用 `lambda` 关键字定义的,而不是 `def`。`def` 是用于定义有名称的常规函数。
B: **匿名函数的参数可以有多个**
- **正确**。`lambda` 函数可以接受多个参数。例如:`lambda x, y: x + y` 是一个接受两个参数的匿名函数。
C: **匿名函数的返回值可以有多个**
- **错误**。`lambda` 函数只能有一个表达式,并且该表达式的结果就是返回值,不能直接有多个返回值。不过,可以返回一个元组以包含多个值,例如:`lambda x, y: (x, y)`。
D: **匿名函数不可以作为其他函数的参数**
- **错误**。`lambda` 函数非常常用的一种情形就是作为其他函数的参数传递。例如,在 `sorted()` 函数中使用 `lambda` 作为排序的 `key` 参数:`sorted(list, key=lambda x: x[1])`。
基于以上分析,正确答案是:**B: 匿名函数的参数可以有多个**。