Python超入門コースの最後のレッスンとなります。
これまでの「総まとめ」のレッスンです。
最後のレッスンまでお付き合い頂いた方、ありがとうございます。
そして、本当にお疲れ様でした!
今までのレッスンの知識で、コードの理解はできるはずなので、頑張って学習してみてください!
▼目次
00:00 はじめに
00:14 プログラムの説明
01:01 クラスとメソッドの作成
04:20 インスタンス化、クラスとメソッドの使い方
▼関連動画
【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/
▼文字書き起こし
実践
総まとめの実践編として、テスト結果を判定するプログラムを作ってみましょう。
どんなプログラムを書くか説明します。
まず、Studentというクラスを作ります。
Studentクラスには、生徒の名前を代入する「name」のアトリビュートを定義します。
そして、Studentクラスには2つメソッドを定義します。
1つのメソッドは、5教科の平均点を計算するcalculate_avgメソッド。
ちなみに、calculateは計算するという意味で、Avgは、平均のaverageを省略する時にプログラミングでよく使う文字です。
もう1つメソッドは、平均点以上だったら合格という意味のpassedを表示、平均点以下なら不合格という意味のfailedを表示させるjedgeメソッドを定義します。
まずClassと書いて、次にクラス名を書きます。
今回はStudentというクラス名なので、Student。コロンを書いて改行。
次に、コンストラクタ(初期化メソッド)の定義していきましょう。
佐藤さん、鈴木さん、佐々木さんといったような名前を代入したいので、アトリビュートはnameとしておきましょう。
次に、5教科の平均点を計算するcalculate_avgメソッドを定義します。
メソッドには、5教科の点数が格納されているリストを渡します。
そして、sumという変数を定義をして、0を代入。
レッスン11で説明しましたが、for文のinの後にリストを書くことで、リストの中身が変数に一つずつ格納されます。
それをレッスン09の演算子で説明した、配列の値を複合代入演算子を使って足し上げていきます。
そして、合計を、リストの要素数で割って平均を算出し、avgという変数に代入します。
リストの要素数を求めるにはlenを使います。
算出した値をreturnで返します。
最後に、テスト結果を判定するjedgeメソッドを作ってみましょう。
jedgeメソッドに平均点を渡しましょう。引数名はavgとします。
if文で、その平均点が60点以上ならpassed、それ以外ならfailedが、resultという変数に格納されるようにします。
これもreturnで返します。
これで、jedgeメソッドの完成です。
以上で、アトリビュートとメソッドの定義は完了です。
続いて、「インスタンス化」をします。
aという学級の出席番号001番の人は、satoさんだとします。
したがって、インスタンス名をa001とします。
「sato」を渡してインスタンス化します。
そして、dataという変数に、リストを代入。リストには、70, 65, 50, 90, 30という5科目の点数を記述します。
calculate_avgメソッドにリストを渡して平均点を算出します。
returnで平均点が返ってくるので、それをavgという変数に格納します。
そのavgをjedgeメソッドに渡すと、passedかfailedが返ってくるはずです。
print関数で、平均点を表示させ、名前と結果を表示させましょう。
※続きは、文字書き起こしブログで
▼文字書き起こし&ソースコードは下記ブログ
https://kino-code.com/course-python14-practice/
▼タグ
#Python #初心者 #プログラミング入門