Question 1easymultiple choice
Study the full Python automation breakdown →PCAP Object-Oriented Programming • Complete Question Bank
Complete PCAP Object-Oriented Programming question bank — all 0 questions with answers and detailed explanations.
Refer to the exhibit.
```python
class Base:
def __init__(self):
self._x = 10
def get_x(self):
return self._x
class Derived(Base):
def __init__(self):
self._x = 20
obj = Derived()
print(obj.get_x())
```class A:
def method(self):
return 'A'
class B(A):
def method(self):
return 'B'
class C(A):
def method(self):
return 'C'
class D(B, C):
passclass Counter:
count = 0
def __init__(self):
Counter.count += 1
@classmethod
def get_count(cls):
return cls.count
c1 = Counter()
c2 = Counter()
print(Counter.get_count())
print(c1.get_count())
print(c2.get_count())class MyClass:
def __init__(self, x):
self.__x = x
def get_x(self):
return self.__x
obj = MyClass(10)
print(obj.__x)Drag steps to the numbered slots on the right, or tap a step then tap a slot.
Drag steps to the numbered slots on the right, or tap a step then tap a slot.
Drag a concept onto its matching description — or click a concept then click the description.
1
3
4
7
8
Drag a concept onto its matching description — or click a concept then click the description.
Adds x to end
Appends elements from iterable
Inserts x at index i
Removes first occurrence of x
Removes and returns last item
class MyClass:
def __init__(self, value):
self.value = value
obj = MyClass(10)
print(obj.value)class A:
def method(self):
return 'A'
class B(A):
def method(self):
return 'B'
class C(A):
def method(self):
return 'C'
class D(B, C):
pass
print(D.mro())class Cache:
def __init__(self, func):
self.func = func
self.cache = {}
def __call__(self, *args):
if args in self.cache:
return self.cache[args]
result = self.func(*args)
self.cache[args] = result
return result
@Cache
def add(a, b):
return a + b
print(add(1, 2))
print(add(1, 2))class MyClass:
def __getattr__(self, name):
return f"Default {name}"
def __setattr__(self, name, value):
self.__dict__[name] = value.upper()
obj = MyClass()
obj.x = "hello"
print(obj.x)class A:
def method(self):
return "A"
class B(A):
def method(self):
return "B"
class C(A):
def method(self):
return "C"
class D(B, C):
pass
print(D.__mro__)class Circle:
def __init__(self, radius):
self._radius = radius
@property
def radius(self):
return self._radius
@radius.setter
def radius(self, value):
if value > 0:
self._radius = value
c = Circle(5)
c.radius = -3
print(c.radius)class A:
def __init__(self):
self.x = 1
class B(A):
def __init__(self):
super().__init__()
self.x = 2
b = B()
print(b.x)class MyClass:
def __init__(self):
self.name = "test"
obj = MyClass()
print(obj.age)>>> help(MyClass) Help on class MyClass in module __main__: class MyClass(builtins.object) | Methods defined here: | | __init__(self, value) | Initialize self. See help(type(self)) for accurate signature. | | display(self) | Print the value. | | ---------------------------------------------------------------------- | Data descriptors defined here: | | __dict__ | dictionary for instance variables (if defined) | | __weakref__ | list of weak references to the object (if defined)
class Dog:
def __init__(self, name):
self.name = name
def bark(self):
return "Woof!"class MyClass:
def __init__(self):
self.__private = 10
obj = MyClass()
print(obj.__private)class A:
def method(self):
print("A", end="")
class B(A):
def method(self):
print("B", end="")
super().method()
class C(A):
def method(self):
print("C", end="")
super().method()
class D(B, C):
def method(self):
print("D", end="")
super().method()
obj = D()
obj.method()class BankAccount:
def __init__(self, owner, balance=0):
self.owner = owner
self.__balance = balance
def deposit(self, amount):
self.__balance += amount
def withdraw(self, amount):
if amount <= self.__balance:
self.__balance -= amount
else:
print('Insufficient funds')
def get_balance(self):
return self.__balance
account = BankAccount('Alice', 100)
print(account.__balance)class A:
def __init__(self):
self.x = 1
class B(A):
def __init__(self):
super().__init__()
self.x = 2
class C(A):
def __init__(self):
self.x = 3
class D(B, C):
pass
d = D()
print(d.x)class MyClass:
__slots__ = ('name', 'age')
def __init__(self, name, age):
self.name = name
self.age = age
obj = MyClass('John', 30)
obj.city = 'New York'Refer to the exhibit.
Traceback (most recent call last):
File "test.py", line 10, in <module>
print(obj.__private_attr)
AttributeError: 'MyClass' object has no attribute '__private_attr'
Given that MyClass defines __private_attr in __init__, why does this error occur?class A:
def __init__(self, val):
self.val = val
def __add__(self, other):
return A(self.val + other.val + 1)
def __str__(self):
return str(self.val)
a = A(1)
b = A(2)
c = a + b
print(c)class Base:
def __init__(self, x):
self.x = x
def method(self):
return self.x * 2
class Derived(Base):
def __init__(self, x, y):
Base.__init__(self, x)
self.y = y
def method(self):
return super().method() + self.y
obj = Derived(3, 4)
print(obj.method())class Counter:
count = 0
def __init__(self):
Counter.count += 1
self.id = Counter.count
c1 = Counter()
c2 = Counter()
print(c1.id, c2.id)class MyClass:
def __init__(self, value):
self.__value = value
def get_value(self):
return self.__value
obj = MyClass(10)
print(obj.__value)class Shape:
def area(self):
return 0
class Circle(Shape):
def __init__(self, radius):
self.radius = radius
def area(self):
return 3.14 * self.radius ** 2
shapes = [Shape(), Circle(2)]
for s in shapes:
print(s.area(), end=' ')