以下关于Python的说法中正确的是( )
A: 在Python中,一个算法的递归实现往往可以用循环实现等价表示,但是大多数情况下递归表达的执行效率要高一些。
B: Python中函数的返回值如果多于1个,则系统默认将它们处理成一个字典。
C: 可以在函数参数名前面加上星号*,这样用户所有传来的参数都被收集起来,星号在这里的作用是收集其余的位置参数,这样就实现了变长参数。
D: 递归调用语句不允许出现在循环结构中。
A: 在Python中,一个算法的递归实现往往可以用循环实现等价表示,但是大多数情况下递归表达的执行效率要高一些。
B: Python中函数的返回值如果多于1个,则系统默认将它们处理成一个字典。
C: 可以在函数参数名前面加上星号*,这样用户所有传来的参数都被收集起来,星号在这里的作用是收集其余的位置参数,这样就实现了变长参数。
D: 递归调用语句不允许出现在循环结构中。
举一反三
- 如果在函数形式参数名前面加上星号*,用户所有传来的参数都被收集起来然后使用,星号在这里的作用是收集其余的位置参数,这样就实现了变长参数。
- 如果在函数形式参数名前面加上星号*,用户所有传来的参数都被收集起来然后使用,星号在这里的作用是收集其余的位置参数,这样就实现了变长参数。 A: 正确 B: 错误
- 下列关于递归错误的说法是()。 A: 递归函数一定有返回值 B: 递归算法一定有终结条件 C: 递归算法执行时会在内存中自动维护一个工作栈 D: 递归算法一定包含循环结构
- 关于函数的参数,以下选项中描述错误的是 A: 可选参数可以定义在非可选参数的前面 B: 一个元组可以传递给带有星号的可变参数 C: 在定义函数时,可以通过在参数前增加星号(*)实现可变数量参数 D: 在定义函数时,可以直接为参数指定默认值
- 关于函数的参数,以下描述中错误的是( )。 A: 可选参数可以定义在非可选参数的前面。 B: 一个元组可以传递给带有星号的可变参数。 C: 在定义函数时,可以设计可变数量参数,通过在参数前增加星号(*)实现。 D: 在定义函数时,可以为某些参数指定默认值。