7. 已知def func(name=”,age=18,gender=”),以下参数传递错误的是() A. func() B. func('张三') C. func('张三’,'男’) D.func(name=’张三’,age=20,gender=’男')
时间: 2023-06-25 09:06:43 浏览: 83
答案是 B。因为虽然函数中给了参数默认值,但是如果没有传递参数,那么这个参数就是空值,而调用 func('张三') 只传入了一个参数,相当于给 name 赋值为 '张三',而 age 和 gender 没有传递,所以会报错。正确的调用方式是 func(name='张三') 或者 func('张三', gender='男') 或者 func(name='张三', gender='男')。
相关问题
class A: def __init__(self,val): self.val=val def func(self): print(self.val) if name=='main': a=A(1) a.func=(b) a.func()
这段代码存在一些语法错误,无法正常运行。首先,if语句的条件缺少一个下划线,应该是if __name__ == '__main__':;其次,在a.func=(b)这一行中,括号应该是花括号,表示一个代码块。同时,b应该是一个函数,表示将a对象的func方法替换为b函数。修改后的代码如下所示:
```
class A:
def __init__(self, val):
self.val = val
def func(self):
print(self.val)
if __name__ == '__main__':
a = A(1)
def b():
print("new func")
a.func = b
a.func()
```
执行结果为:
```
new func
```
(a) class A: def init(self,val): self.val=val def func(self): print(self.val) if name=='main': a=A(1) a.func=(b) a.func() 输出样例: 1
这段代码有语法错误,应该是 `__init__` 而不是 `init`。同时,`if name=='main'` 应该是 `if __name__=='__main__'`。修正后代码如下:
```
class A:
def __init__(self,val):
self.val=val
def func(self):
print(self.val)
if __name__=='__main__':
a=A(1)
a.func=(b)
a.func()
```
请问你的问题是关于(b)应该填什么吗?