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

回答編集履歴

4

編集

2019/05/14 05:52

投稿

hayataka2049
hayataka2049

スコア30939

answer CHANGED
@@ -25,7 +25,7 @@
25
25
  ```python
26
26
  ob = MyObj()
27
27
  ob._MyObj__num = 321
28
- ob.print()
28
+ ob.print() # 321
29
29
  ```
30
30
 
31
31
  では`ob.__num`に対して代入すると? というと、前提としてpythonのオブジェクトは代入によって新しい属性を作ることができます。

3

追記

2019/05/14 05:51

投稿

hayataka2049
hayataka2049

スコア30939

answer CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  チュートリアルではプライベート変数という言葉も使っているようです。
12
12
 
13
- とりあえず厳密な意味での(絶対に外部から参照できない)「プライベート変数」はpythonにはない、としておきます。
13
+ とりあえず厳密な意味での(絶対に外部から参照できない)「プライベート変数」はpythonにはない、そういう名前で呼ぶこも(原則的には)ない、としておきます。
14
14
 
15
15
  ---
16
16
 

2

修正

2019/05/14 05:51

投稿

hayataka2049
hayataka2049

スコア30939

answer CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  チュートリアルではプライベート変数という言葉も使っているようです。
12
12
 
13
- とりあえず厳密な意味での「プライベート変数」はpythonにはない、としておきます。
13
+ とりあえず厳密な意味での(絶対に外部から参照できない)「プライベート変数」はpythonにはない、としておきます。
14
14
 
15
15
  ---
16
16
 

1

出てくる

2019/05/14 05:31

投稿

hayataka2049
hayataka2049

スコア30939

answer CHANGED
@@ -1,11 +1,17 @@
1
1
  > プライベート変数
2
-
2
+ ~~
3
3
  そういう言葉はありません。少なくともpythonの世界では。
4
+ ~~
4
5
 
5
6
  [検索 — Python 3.7.3 ドキュメント](https://docs.python.org/ja/3/search.html?q=%E3%83%97%E3%83%A9%E3%82%A4%E3%83%99%E3%83%BC%E3%83%88%E5%A4%89%E6%95%B0&check_keywords=yes&area=default)
6
7
 
7
- ドキュメントにはプライベートな名前と書いてあるみたいですね。
8
+ ~~ドキュメントにはプライベートな名前と書いてあるみたいですね。
9
+ ~~
8
10
 
11
+ チュートリアルではプライベート変数という言葉も使っているようです。
12
+
13
+ とりあえず厳密な意味での「プライベート変数」はpythonにはない、としておきます。
14
+
9
15
  ---
10
16
 
11
17
  アンダーバー2つの属性はマングリングによって処理されます。