質問するログイン新規登録

回答編集履歴

3

__setattr__を追記

2016/08/21 05:30

投稿

flied_onion
flied_onion

スコア2604

answer CHANGED
@@ -25,6 +25,8 @@
25
25
  s.q()
26
26
  ```
27
27
 
28
+ setの方は `__setattr__` かと。
29
+
28
30
  検索するなら「python 特殊メソッド」とか「python 特殊メソッド 未定義メンバ」あたりですかね。
29
31
 
30
32
 

2

追記前部分の明記

2016/08/21 05:30

投稿

flied_onion
flied_onion

スコア2604

answer CHANGED
@@ -30,6 +30,8 @@
30
30
 
31
31
  ---
32
32
 
33
+ **追記前(php側の関数を勘違いしていた)**
34
+
33
35
  実装というか
34
36
 
35
37
  ```

1

勘違いしていたので __getattr__について追記

2016/08/21 05:28

投稿

flied_onion
flied_onion

スコア2604

answer CHANGED
@@ -1,3 +1,35 @@
1
+ **追記**
2
+
3
+ すいません、 `__getattr__` とかの事ですね。
4
+
5
+ ```
6
+ class Sample():
7
+ def __init__(self):
8
+ self.__x = 10
9
+
10
+ def __private(self, x):
11
+ print(x)
12
+
13
+ def __getattr__(self, name):
14
+ if name == 'p':
15
+ print(str(name) + ' is accessed ')
16
+ else:
17
+ return lambda *args: None
18
+
19
+
20
+ if __name__ == '__main__':
21
+ s = Sample()
22
+ s._Sample__private(1)
23
+ p = s.p
24
+ print(s._Sample__x)
25
+ s.q()
26
+ ```
27
+
28
+ 検索するなら「python 特殊メソッド」とか「python 特殊メソッド 未定義メンバ」あたりですかね。
29
+
30
+
31
+ ---
32
+
1
33
  実装というか
2
34
 
3
35
  ```