回答編集履歴
1
修正
answer
CHANGED
@@ -14,4 +14,4 @@
|
|
14
14
|
|
15
15
|
モジュールに状態を持たせるなどの目的のためにモジュールの変数を変更したい場合、モジュールのトップレベルでアクセス用の関数を書くという戦略があり得ます。`set_x`関数のようなものを定義して、`global x`した`x`に対して代入すればセッター風に使えます。モジュールの外に直接`x`が見えないようにしておきたければ、実際の変数名を`_x`としてプライベート変数風にできます。
|
16
16
|
|
17
|
-
モジュールは名前空間なのでオブジェクト指向のクラスっぽく扱えなくもないのですが、それをやるならクラスで実装すべき、ということに通常はなるでしょう。また、実装はクラスでやってモジュール内部にインスタンスを隠蔽しておき、それをwrap
|
17
|
+
モジュールは名前空間なのでオブジェクト指向のクラスっぽく扱えなくもないのですが、それをやるならクラスで実装すべき、ということに通常はなるでしょう。また、実装はクラスでやってモジュール内部にインスタンスを隠蔽しておき、それをwrapするためのモジュールに定義した関数を使ってモジュールの属性経由のインターフェースを提供するという実装方針を取ることもあります。[標準のrandom](https://docs.python.org/ja/3/library/random.html)はそれです。
|