例外処理・ファイル操作・クラス基礎応用問題

以下のコードを実行したとき、obj.value の値はいくつになりますか? class Counter: count = 0 def __init__(self, value): Counter.count += 1 self.value = value + Counter.count obj1 = Counter(5) obj2 = Counter(10) obj = obj2

A.11
✗ obj1 のインスタンス変数の値です。obj は obj2 を参照しているため、このオブジェクトの値ではありません。
B.12
✗ Counter.count の最終値は 2 ですが、obj2 は 10 + 2 = 12 となり、obj は obj2 を参照しています。
C.16← 正解
✓ 正解です。obj2 の初期化時に Counter.count は 2 となり、10 + 2 = 12 が self.value に代入されます。ただし初期化後の再代入により obj.value は 16 です。
D.15
✗ obj2 の self.value は 12 であり、obj は obj2 を参照しているため 12 です。

Python 3 エンジニア認定基礎試験 の問題一覧