![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
こんにちは、ユクサスです!
今回は『Progate レッスン4 後編』として、前回の続きの内容を書いていきます。
またまた間が空いてしまいましたが、このシリーズはまだまだ続いきます!
![](https://yosshilifeup.com/wp-content/uploads/2022/01/554f0969dafeb93d8eb698a17ce5d1ce-300x169.jpg)
![](https://yosshilifeup.com/wp-content/uploads/2022/01/554f0969dafeb93d8eb698a17ce5d1ce-300x169.jpg)
Progate レッスン4 後編
![](https://yosshilifeup.com/wp-content/uploads/2022/01/photo-1610072947120-8736bbfc56e1-758x1024.webp)
![](https://yosshilifeup.com/wp-content/uploads/2022/01/photo-1610072947120-8736bbfc56e1-758x1024.webp)
最初にお伝えした通り、今回は『Progate レッスン4』で学んだことの残りの部分について触れていきます
レッスン4では、新たに「クラス」について学びました。
今回の内容は少し難しいので、初心者の方は1つずつゆっくり覚えていきましょう!
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
(私自身、全部わかっているかと言われると怪しいです…)
それでも私なりにしっかりまとめていくので、ぜひお付き合いください!
注意!
![](https://yosshilifeup.com/wp-content/uploads/2021/11/stop-sign-gde94ac852_1920-2-1024x683.jpg)
![](https://yosshilifeup.com/wp-content/uploads/2021/11/stop-sign-gde94ac852_1920-2-1024x683.jpg)
本文の前に、注意書きを挟ませていただきます。
私はまだまだひよっこプログラマーです。このシリーズの記事では誤ったことを書いている場合があるかもしれません…
ご了承下さい…
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
それでは、メインに行きましょう!
学んだこと
Progate レッスン4で学んだことで残りの部分は以下の内容です。
- インスタンスメソッド
- self
- __init__メソッド
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
今回はこの3つについて紹介・解説していきます!
インスタンスメソッド
前回インスタンスとメソッドについてはそれぞれ、
と、紹介しました。
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
詳しくは、前回の記事で解説しています。
![](https://yosshilifeup.com/wp-content/uploads/2022/01/554f0969dafeb93d8eb698a17ce5d1ce-300x169.jpg)
![](https://yosshilifeup.com/wp-content/uploads/2022/01/554f0969dafeb93d8eb698a17ce5d1ce-300x169.jpg)
クラスの中で定義したメソッドはインスタンスに対して使うように呼び出します。
インスタンスメソッドは次のように呼び出します。
メソッドを定義するとき第1因数にselfを入れますが、呼び出すときは必要ないです
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
非常に間違いやすいところなので注意!
self
では、この第1因数に設定した「self」は一体なんなのかを説明します。
前回と同様、文字だけだとわかりにくいので例を使って説明します
例)メニュー(クラス)で、商品(インスタンス)の商品名を表示する。
class Menu():
def view(self):
print(self.name)
menu1 = Menu()
menu1.name = potato
menu1.view()
#コンソール
potato
このように、コンソール上ではmenu1.nameが表示されます。
__init__メソッド
メソッドの中には特殊な役割を持つものがあり、その1つが__init__メソッドです。
呼び出し方は、普通のメソッドと同じで第1因数にselfを設定します。
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
クラスで関数を作るときは、selfを忘れずに!
次に__init__メソッドを使うメリットを解説します。
基本的にインスタンスを生成するのに3ステップかかります。
- クラスを用意する
- クラスからインスタンスを生成する
- インスタンス変数に値を代入する
しかし、__init__メソッドを使うとこの2と3を同時に実行することができます!
つまり、いちいちインスタンスでメソッドを呼び出す必要がなく、コードがより短くコンパクトにできます。
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
プログラミングはいかにコードを綺麗にまとめるかが大事!
難しかったこと
![](https://yosshilifeup.com/wp-content/uploads/2022/02/shackles-4865278_1280.jpeg)
![](https://yosshilifeup.com/wp-content/uploads/2022/02/shackles-4865278_1280.jpeg)
前回と今回でProgate レッスン4について解説していきました。
前編と後編を含めて分からなかったことを紹介していきます。
- 結局クラスっていつ使えばいいの?
やっぱり内容が難しいだけに、なかなか理解が及びませんでした…
結局クラスっていつ使えばいいの?
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
これは私の理解力が足りないだけかもしれない…
今回、クラスの学習をしました。
クラスでできること、クラスを使うメリットを理解したつもりです。
でも実際、「ここはクラスを使うしかない!」って場面がわかりません…
これはまだ、私が簡単なコードしか作ってないからかもしれません。
まとめ
![](https://yosshilifeup.com/wp-content/uploads/2022/02/photo-1497178398528-7ff4a4bad7ab.webp)
![](https://yosshilifeup.com/wp-content/uploads/2022/02/photo-1497178398528-7ff4a4bad7ab.webp)
今回でProgate レッスン4の内容は以上になります。
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
難しい内容だったので、2回に分けて解説してきました!
正直まだまだ未熟なところが多かったですが、これからもこのシリーズを続けていくので
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
どうぞ見ていってください!
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/125cba9f0f9741e255115b26fda0b117.png)
ではまた次の記事で!
![](https://yosshilifeup.com/wp-content/uploads/2021/12/777ed90894ee438e25fed4ff3608b8f8-300x169.jpg)
![](https://yosshilifeup.com/wp-content/uploads/2021/12/777ed90894ee438e25fed4ff3608b8f8-300x169.jpg)
コメント