Python 3エンジニア認定基礎試験-クラスとオブジェクトの操作(self)-

1. 
次のコードの実行結果を選んでください。

class MyClass:
def __init__(self, x, y):
self.x = x
self.y = y

def add(self):
return self.x + self.y

obj = MyClass(3, 7)
print(obj.add())

2. 
次のコードの実行結果を選んでください。

class MyClass:
def set_value(self, value):
self.value = value

obj = MyClass()
obj.set_value(42)
print(obj.value)

3. 
次のコードの実行結果を選んでください。

class MyClass:
def __init__(self):
self.data = []

def add_data(self, item):
self.data.append(item)

obj = MyClass()
obj.add_data(1)
obj.add_data(2)
print(obj.data)

4. 
次のコードの実行結果を選んでください。

class MyClass:
def __init__(self, values):
self.values = values

obj = MyClass([1, 2, 3])
obj.values[0] = 10
print(obj.values)

5. 
次のコードの実行結果を選んでください。

class MyClass:
def set_value(self, value):
self.value = value

obj = MyClass()
obj.set_value(42)
print(obj.value)

6. 
次のコードの実行結果を選んでください。

class MyClass:
def __init__(self, value):
self.value = value

obj1 = MyClass(10)
obj2 = obj1
obj2.value = 20
print(obj1.value)

7. 
次のコードの実行結果を選んでください。

class MyClass:
def __init__(self, value):
self.value = value

def reset(self):
self.value = 0

obj = MyClass(10)
obj.reset()
print(obj.value)

8. 
次のコードの実行結果を選んでください。

class MyClass:
def __init__(self, name):
self.name = name

def greet(self):
return f"Hello, {self.name}!"

obj = MyClass("Alice")
print(obj.greet())

9. 
次のコードについて、selfの使用方法として正しいものを選んでください。

class MyClass:
def __init__(self, name):
self.name = name

def greet(self):
return f"Hello, {self.name}!"

10. 
次のコードについて、selfの正しい説明を選んでください。

class MyClass:
def my_method(self):
pass

11. 
次のコードの実行結果を選んでください。

class MyClass:
def __init__(self, value):
self.value = value

def multiply(self, factor):
return self.value * factor

obj = MyClass(5)
print(obj.multiply(3))

12. 
次のコードについて、selfの適切な説明を選んでください。

class MyClass:
def greet(self):
return "Hello!"

13. 
次のコードについて、selfを省略した場合の結果として正しいものを選んでください。

class MyClass:
def greet():
return "Hello!"

obj = MyClass()
print(obj.greet())

14. 
次のコードについて、selfを使う理由として適切な説明を選んでください。

class MyClass:
def set_name(self, name):
self.name = name

15. 
次のコードの実行結果を選んでください。

class MyClass:
def __init__(self, value):
self.value = value

def add(self, other_value):
return self.value + other_value

obj = MyClass(10)
print(obj.add(5))

16. 
次のコードの実行結果を選んでください。

class MyClass:
def __init__(self, x):
self.x = x

def double(self):
self.x *= 2

obj1 = MyClass(3)
obj2 = MyClass(4)
obj1.double()
print(obj1.x, obj2.x)

17. 
次のコードの実行結果を選んでください。

class MyClass:
def __init__(self, value):
self.value = value

def multiply(self, factor):
self.value *= factor

obj = MyClass(5)
obj.multiply(3)
print(obj.value)

18. 
次のコードの実行結果を選んでください。

class MyClass:
def __init__(self, name):
self.name = name

def greet(self):
return f"Hello, {self.name}!"

obj1 = MyClass("Alice")
obj2 = MyClass("Bob")
print(obj1.greet())
print(obj2.greet())

19. 
次のコードの実行結果を選んでください。

class MyClass:
def __init__(self, value):
self.value = value

def reset(self):
del self.value

obj = MyClass(42)
obj.reset()
print(obj.value)

20. 
次のコードについて、selfが不要なケースとして適切な説明を選んでください。

class MyClass:
@staticmethod
def static_method():
return "Static method"

コメントを残すにはログインしてください。