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

回答編集履歴

5

書き間違いの編集

2018/02/18 04:19

投稿

namnium1125
namnium1125

スコア2045

answer CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  (すみません国語力不足でした。)
20
20
 
21
- 上記コードを裏返して説明すると、このように`self.`インスタンスに値を保持することができます。
21
+ 上記コードを裏返して説明すると、このように`self.`をつけることでインスタンスに値を保持することができます。
22
22
 
23
23
  例えば以下のような使い方が考えられます。
24
24
 

4

文言の編集

2018/02/18 04:19

投稿

namnium1125
namnium1125

スコア2045

answer CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  (すみません国語力不足でした。)
20
20
 
21
- 上記コードを裏返して説明すると、このようにインスタンスに値を保持することができます。
21
+ 上記コードを裏返して説明すると、このように`self.`インスタンスに値を保持することができます。
22
22
 
23
23
  例えば以下のような使い方が考えられます。
24
24
 

3

コードの追記

2018/02/18 04:19

投稿

namnium1125
namnium1125

スコア2045

answer CHANGED
@@ -18,4 +18,25 @@
18
18
 
19
19
  (すみません国語力不足でした。)
20
20
 
21
- 上記コードを裏返して説明すると、このようにインスタンスに値を保持することができます。
21
+ 上記コードを裏返して説明すると、このようにインスタンスに値を保持することができます。
22
+
23
+ 例えば以下のような使い方が考えられます。
24
+
25
+ ```python
26
+ class Bird():
27
+ def __init__(self,name):
28
+ self.name = name
29
+
30
+ def greet(self):
31
+ print(f'こんにちは!私は{self.name}です。')
32
+
33
+ if __name__=='__main__':
34
+ bird1 = Bird('pii_chan')
35
+ bird2 = Bird('pii_suke')
36
+ for bird in (bird1,bird2):
37
+ bird.greet()
38
+ '''実行結果
39
+ こんにちは!私はpii_chanです。
40
+ こんにちは!私はpii_sukeです。
41
+ '''
42
+ ```

2

編集

2018/02/18 04:17

投稿

namnium1125
namnium1125

スコア2045

answer CHANGED
@@ -1,4 +1,4 @@
1
- そもそも最初の例だとインスタンスのアトリビュートになっていないと思うのですが…
1
+ ~~そもそも最初の例だとインスタンスのアトリビュートになっていないと思うのですが…~~
2
2
 
3
3
  ```python
4
4
  class Animal():
@@ -12,4 +12,10 @@
12
12
  print(animal.pii_suke) # AttributeError: 'Animal' object has no attribute 'pii_suke'
13
13
  ```
14
14
 
15
- つまりそもそも等価な処理ではないです。
15
+ ~~つまりそもそも~~このように等価な処理ではないです。
16
+
17
+ #
18
+
19
+ (すみません国語力不足でした。)
20
+
21
+ 上記コードを裏返して説明すると、このようにインスタンスに値を保持することができます。

1

例となるコードをすり替え

2018/02/18 04:11

投稿

namnium1125
namnium1125

スコア2045

answer CHANGED
@@ -1,13 +1,15 @@
1
1
  そもそも最初の例だとインスタンスのアトリビュートになっていないと思うのですが…
2
2
 
3
3
  ```python
4
- class Hoge():
4
+ class Animal():
5
- def __init__(self,fuga,bar):
5
+ def __init__(self):
6
- self.fuga = fuga
6
+ self.pii_chan = 'bird'
7
- baz = bar
7
+ pii_suke = 'bird'
8
8
 
9
9
  if __name__=='__main__':
10
- hoge = Hoge(114,514)
10
+ animal = Animal()
11
- print(hoge.fuga) # 114
11
+ print(animal.pii_chan) # bird
12
- print(hoge.baz) # AttributeError: 'Hoge' object has no attribute 'baz'
12
+ print(animal.pii_suke) # AttributeError: 'Animal' object has no attribute 'pii_suke'
13
- ```
13
+ ```
14
+
15
+ つまりそもそも等価な処理ではないです。