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

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

class MyClass:
class_variable = [1, 2, 3]

obj1 = MyClass()
obj1.class_variable.append(4)

print(MyClass.class_variable)

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

class MyClass:
class_variable = "shared"

obj1 = MyClass()
obj2 = MyClass()
MyClass.class_variable = "modified"

print(obj1.class_variable)
print(obj2.class_variable)

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

class MyClass:
class_variable = "shared"

obj = MyClass()
obj.class_variable = "instance value"
print(MyClass.class_variable)

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

class MyClass:
class_variable = [1, 2, 3]

obj = MyClass()
obj.class_variable = [4, 5, 6]

print(MyClass.class_variable)

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

class MyClass:
class_variable = 0

@classmethod
def increment(cls):
cls.class_variable += 1

obj1 = MyClass()
obj2 = MyClass()

obj1.increment()
obj2.increment()
print(MyClass.class_variable)

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

class MyClass:
class_variable = "shared"

obj = MyClass()
MyClass.class_variable = "modified"

print(obj.class_variable)

7. 
次のコードについて、obj1.class_variable = "changed"の動作として正しいものを選んでください。

class MyClass:
class_variable = "shared"

obj1 = MyClass()
obj2 = MyClass()
obj1.class_variable = "changed"
print(obj2.class_variable)

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

class MyClass:
class_variable = 0

def increment(self):
MyClass.class_variable += 1

obj1 = MyClass()
obj2 = MyClass()

obj1.increment()
print(obj2.class_variable)

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

class MyClass:
class_variable = 5

def change_variable(self):
self.class_variable += 1

obj1 = MyClass()
obj2 = MyClass()

obj1.change_variable()
print(MyClass.class_variable)

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

class MyClass:
class_variable = 10

obj1 = MyClass()
obj2 = MyClass()
obj1.class_variable = 20

print(MyClass.class_variable)

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

class MyClass:
class_variable = "shared"

obj = MyClass()
print(obj.class_variable)

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

class MyClass:
class_variable = {"key": "value"}

obj = MyClass()
obj.class_variable["new_key"] = "new_value"

print(MyClass.class_variable)

13. 
次のコードについて、クラス変数へのアクセス方法として正しいものを選んでください。

class MyClass:
class_variable = "shared"

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

class MyClass:
class_variable = "shared"

MyClass.class_variable = "modified"
print(MyClass.class_variable)

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

class MyClass:
class_variable = 5

obj1 = MyClass()
obj1.class_variable += 1

print(MyClass.class_variable)

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

class MyClass:
class_variable = 10

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

class MyClass:
class_variable = 0

def increment(self):
MyClass.class_variable += 1

obj1 = MyClass()
obj2 = MyClass()

obj1.increment()
obj2.increment()
print(MyClass.class_variable)

18. 
次のコードにおいて、クラス変数として正しい記述を選んでください。

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

19. 
次のコードについて、obj.class_variable = "new value"の結果として正しい説明を選んでください。

class MyClass:
class_variable = "shared"

obj = MyClass()
obj.class_variable = "new value"
print(MyClass.class_variable)

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

class MyClass:
class_variable = 100

obj = MyClass()
del obj.class_variable
print(obj.class_variable)

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