Which of the following is correct?class A: def __init__(self): self.count=5 self.count=count+1a=A()print(a.count)560Error
Question
Which of the following is correct?
class A:
def __init__(self):
self.count = 5
self.count = count + 1
a = A()
print(a.count)
- 560
- Error
Solution
The correct answer is "Error".
Here's why:
In the __init__
method of class A, self.count=count+1
is incorrect. The variable count
is not defined in this scope. If you want to increment the self.count
by 1, you should write self.count=self.count+1
.
So, when you try to create an object of class A using a=A()
, Python will throw an error because it doesn't know what count
is in the expression count+1
.
Here's the corrected code:
class A:
def __init__(self):
self.count=5
self.count=self.count+1
a=A()
print(a.count)
This will output 6
because self.count
is initially set to 5
and then incremented by 1
.
Similar Questions
class Demo: def __init__(self): self.a = 1 self.__b = 1 def get(self): return self.__bobj = Demo()obj.a=45print(obj.a)
what is the output of following python code? class myclass: def __init__(self,a): self.a = a print(self.a)o=myclass()
Which of the following is correct?class A: def __init__(self,name): self.name=namea1=A("john")a2=A("john")
Which type of method in Python is not bound to either the class or instances and does not receive the class or instance as its first argument?
class Student: def __init__(self,name,id): self.name=name self.id=id print(self.id)std=Student("Simon",1)std.id=2print(std.id)
Upgrade your grade with Knowee
Get personalized homework help. Review tough concepts in more detail, or go deeper into your topic by exploring other relevant questions.