回答編集履歴

5

コード変更

2019/11/29 09:07

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -20,9 +20,9 @@
20
20
 
21
21
  def main():
22
22
 
23
- print(vars(SampleClass()))
23
+ y = SampleClass()
24
24
 
25
- y = 456
25
+ print(vars(y))
26
26
 
27
27
  print(vars())
28
28
 
@@ -44,6 +44,6 @@
44
44
 
45
45
  {'x': 123}
46
46
 
47
- {'y': 456}
47
+ {'y': <__main__.SampleClass object at 0x6ffffd106a0>}
48
48
 
49
49
  ```

4

引数を渡す例を追加

2019/11/29 09:07

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -10,9 +10,19 @@
10
10
 
11
11
  ```python
12
12
 
13
+ class SampleClass:
14
+
15
+ def __init__(self):
16
+
17
+ self.x = 123
18
+
19
+
20
+
13
21
  def main():
14
22
 
23
+ print(vars(SampleClass()))
24
+
15
- y = 123
25
+ y = 456
16
26
 
17
27
  print(vars())
18
28
 
@@ -32,6 +42,8 @@
32
42
 
33
43
  ```
34
44
 
35
- {'y': 123}
45
+ {'x': 123}
46
+
47
+ {'y': 456}
36
48
 
37
49
  ```

3

説明補足

2019/11/29 09:05

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -1,4 +1,10 @@
1
1
  vars() で変数辞書一覧が取れるけど、そういう話ではない?
2
+
3
+ vars関数の引数には変数辞書を取りたいオブジェクトを指定できます。
4
+
5
+ 引数を指定しないと locals() でローカル変数辞書が見えます。
6
+
7
+ 他に、globals() でグローバル変数辞書が見えます。・
2
8
 
3
9
 
4
10
 

2

不要説明削除

2019/11/29 09:00

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -1,6 +1,4 @@
1
1
  vars() で変数辞書一覧が取れるけど、そういう話ではない?
2
-
3
- 変数だけでなく、メソッドやobjectクラスが持つ変数も見えますけど。
4
2
 
5
3
 
6
4
 

1

実行結果修正

2019/11/29 08:57

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -28,6 +28,6 @@
28
28
 
29
29
  ```
30
30
 
31
- {'y': 0}
31
+ {'y': 123}
32
32
 
33
33
  ```