この動画では、Pythonのクラスについて説明します。文字の書き起こし、ソースコードも完全無料です。サイトでの登録なども一切不要です。概要欄の下部にサイトURLあります。
▼目次
00:00 はじめに
00:39 クラスとは?
00:52 アトリビュートとメソッド
01:55 クラスの定義
02:44 メソッドの定義
05:04 クラスの使い方(インスタンス化)
07:49 アトリビュートの定義
10:07 コンストラクタ
14:05 クラスの便利なところ
14:44 確認問題
▼関連動画
【Python超入門コース】01.コース紹介( • 【Python超入門コース】01.コース紹介|初心者にわかりやすいようなコ... )
【Python超入門コース】02.Pythonとは( • 【Python超入門コース】02.Pythonとは?|Pythonの特徴や... )
【Python超入門コース】03.環境構築 for Mac( • 【Python超入門コース】03.環境構築 for Mac|プログラミング... )
【Python超入門コース】03.環境構築 for Windows( • 【Python超入門コース】03.環境構築 for Windows|プログ... )
【Python超入門コース】04.プログラムの基本構造( • 【Python超入門コース】04.プログラムの3つの基本構造|プログラムの... )
【Python超入門コース】05.実行( • 【Python超入門コース】05.プログラム実行方法 |プログラムを書いて... )
【Python超入門コース】06.変数( • 【Python超入門コース】06.変数 |変数は、例えるなら「箱」のこと。... )
【Python超入門コース】07.データ型( • 【Python超入門コース】07.データ型 |変数に入れるデータの種類のこ... )
【Python超入門コース】08.リスト( • 【Python超入門コース】08.リスト|変数を箱。リストをロッカーに例え... )
【Python超入門コース】09.演算子( • 【Python超入門コース】09.演算子|足し算や引き算、2つの値の大小を... )
【Python超入門コース】10.条件分岐( • 【Python超入門コース】10.条件分岐|条件にあてはまればAという処理... )
【Python超入門コース】11.繰り返し( • 【Python超入門コース】11.繰り返し|同じ処理を何度も実行できます【... )
【Python超入門コース】12.関数( • 【Python超入門コース】12.関数 |関数を料理ロボットに例えて説明し... )
【Python超入門コース】13.クラス( • 【Python超入門コース】13.クラス|クラスとは、「データ」と「処理」... )
【Python超入門コース】14.実践( • 【Python超入門コース】14.実践|すべて理解できればPythonの超... )
▼各超入門コース 合併版(約1時間)
【Python超入門コース】( • Python超入門コース 合併版|Pythonの超基本的な部分をたった1時... )
【JavaScript超入門コース】( • JavaScript超入門コース 合併版【JavaScriptの超基本的な... )
【Java超入門コース】( • Java超入門コース 合併版【Javaの超基本的な部分をたった1時間で学べ... )
【PHP超入門コース】( • PHPのプログラミング初心者向けの超入門講座|たった1時間で学べる【文字書... )
【Go超入門コース】( • 【たった1時間で学べる】Go言語のプログラミング初心者向けの超入門講座【文... )
【Ruby超入門コース】( • 【たった1時間で学べる】Rubyのプログラミング初心者向けの超入門講座【文... )
【Kotlin超入門コース】( • 【たった1時間で学べる】Kotlinのプログラミング初心者向けの超入門講座... )
▼自己紹介
現在:フリーランス(マーケティング関連の人工知能開発、データ分析や業務自動化など)
前職:リクルート
▼SNS
Twitter : https://twitter.com/kino_code/likes
Facebook : https://www.facebook.com/%E3%82%AD%E3%83%8E%E3%82%B3%E3%83%BC%E3%83%89-105693727500005/
Website : https://kino-code.com/
▼文字書き起こし
クラスとは?
クラスにはインスタンスやコンストラクタなどの概念がでてきます。
私自身、プログラミングを勉強し始めたときに、これを理解するのに時間がかかりました。
私が何冊も書籍を読んで、こういう順番であれば理解しやすいというプロセスで説明します。
最後までみていただければ理解できるかと思うので、最後までみていってください。
また、最後に確認テストもありますのでぜひ挑戦してみてください。
まずクラスについて説明します。
クラスとは、「データ」と「処理」をまとめたものになります。
Pythonでは、「データ」のことをアトリビュートといい、「処理」のことをメソッドといいます。
アトリビュートとメソッド
アトリビュートは、クラス内で定義された変数のことです。
アトリビュートは、変数と同じように、数値や文字列を代入したり、参照したりすることができます。
クラスにアトリビュートを作ることを「アトリビュートを定義する」といいます。
アトリビュートと変数の違いは、クラスの外にあるかクラスの中にあるかの違いです。
次にメソッドについて説明します。
前のレッスンで関数は、いろいろな「処理」をまとめて1つにしたものと説明しました。
メソッドも関数と同じで、いろいろな「処理」をまとめて1つにしたものです。
簡単にいうと、メソッドは、クラス内に定義された関数です。
メソッドも関数と同じようにdefで定義します。
まとめると、アトリビュートはクラス内の変数、メソッドはクラス内の関数ということになります。
クラスの定義
クラスを作ることをクラスを定義すると言います。
このレッスンでどんなクラスを定義するか説明します。
クラス名はStudentとします。
そのクラスに生徒の名前を代入する「name」というアトリビュートを定義します。
そして、数学と英語の点数の平均を計算するavgというメソッドを定義します。
コードを書いていきましょう
class Student:
def avg():
print((80 + 70) / 2)
まずclassと書いて、次にクラス名を書きます。
今回はStudentというクラス名なので、Student。
クラス名の最初の文字は小文字でも定義はできますが、最初の文字を大文字するのは、Pythonの慣習となっています。
クラス名の最初の文字は大文字にしましょう。
コロンを書いて改行です。
メソッドの定義
次にメソッドを定義していきます。
数学と英語の点数の平均を計算するメソッドです。
平均を算出するので、平均という意味のaverageを省略して、avgというメソッド名にします。
まずdefと書いて、メソッド名。
丸括弧と書いて、コロン。改行です。
数学が80点と、英語が70点を取れたとして、それらを足して2で割ります。
表示させるためにpirnt関数でくくりましょう。
ここまでみた通り、メソッドは関数の定義のやり方と同じです。
ただし、引数について、メソッドと関数に違うところがあります。
スライドで説明します。
メソッドを定義する場合、必ず1つ引数を記述しなければならないです。
関数の場合は、渡したい引数がない場合、空欄でもよいです。
しかし、メソッドの場合は、渡したい引数がない場合でも必ず引数が1つ必要になります。
この引数は、どんな引数名でもよいのですが、selfと書くのが慣習です。
つまり、メソッドに渡したい引数がない場合、メソッドの引数にselfを記述します。
メソッドに渡したい引数が1つの場合、メソッドの引数にselfと渡したい引数名の合計2つ。
メソッドに渡したい引数が2つの場合、メソッドの引数にselfを含めた合計3つの引数を記述します。
コードを書いていきましょう。
※続きは、文字書き起こしブログで
▼文字書き起こし&ソースコードは下記ブログ
https://kino-code.com/course-python13-class/
▼タグ
#Python初心者 #プログラミング入門 #クラス