演習課題「学生メソッドを呼び出す」
右のコードは、学生の国語と算数のテストの点数を保持するクラスで、テストの合計点数を計算するsum()メソッドを持っています。
このクラスを使って、次の学生のオブジェクトを作成し、合計点数の計算結果を表示してください。
国語 = 70点
算数 = 43点
プログラムを実行して、正しく出力されれば演習課題クリアです!
期待する出力値
合計は113点です
演習課題「学生メソッドを作る」
右のコードは、学生の国語と算数のテストの点数を保持するクラスです。
このクラスに、テストの合計点数を計算するsumメソッドを記述してください。
プログラムを実行して、正しく出力されれば演習課題クリアです!
期待する出力値
合計は113点です
#05:引数と戻り値のあるメソッドを作ろう
ここでは、メソッドに、引数と戻り値を追加します。例として、商品ごとに単価と個数を保持するクラスを作成します。
クラス変数を宣言したクラスのインスタンス全てで共有して利用できる変数。
# coding: utf-8
# クラスで、引数と戻り値のあるメソッドを作る
class Item:
tax = 1.08
def __init__(self, price, quantity):
self.price = price
self.quantity = quantity
def total(self):
return int(self.price * self.quantity * Item.tax)
apple = Item(120, 15)
total = apple.total()
print("合計金額は" + str(total) + "円です")
orange = Item(85, 32)
print("合計金額は" + str(orange.total()) + "円です")
今回は、int関数を用いて、小数点以下を切り捨てました。
切り捨て以外にも、mathモジュールを用いると、様々な方法で、小数から整数に変換できます。
例えば、trunc(x)は、int関数と同様に、xの小数部分を削除します。
ceil(x)は、x以上の最小の整数を返します。天井関数と呼ばれています。
floor(x)は、x以下の最大の整数を返します。床関数と呼ばれています。
round(x)は、端数が0.5より大きいならは切り上げ、端数が0.5より小さいなら切り捨てた整数を返します。
ただし、端数がちょうど0.5の場合、切り捨てと切り上げのうち、結果が偶数になる整数を返します。
一般的な四捨五入と異なる動作をするので注意が必要です。
round関数については、下記URL先をご参照ください。
https://docs.python.jp/3/library/functions.html?highlight=round#round
mathモジュールについて、詳しくは、下記URL先をご参照ください。
https://docs.python.jp/3/library/math.html
9.クラス — Python 3.6.5 ドキュメント
https://docs.python.org/ja/3/tutorial/classes.html
Python基礎講座(13 クラス)
https://qiita.com/Usek/items/a206b8e49c02f756d636