🔥
Python100本ノック#4 オブジェクト指向プログラミングの実行例
OOPの実行例をやってみる
オブジェクト指向プログラミング (OOP: Object-Oriented Programming)
実行例1(学生情報管理)
- 属例
- 名前
- 成績
- メソッド
- 成績評価
- 90 < 点数 → 秀
- 80 < 点数 < 90 → 優
- 70 < 点数 < 80 → 良
- 60 < 点数 < 70 → 可
- 点数 < 60 → 不可
- 成績評価
# 1、学生のクラスを定義
class Student():
# 2、属性を定義
def __init__(self, name, score):
self.name = name
self.score = score
# 3、メソッド(成績評価方法)を定義
def print_grade(self):
if self.score >= 90:
print(f'名前:{self.name},成績:{self.score},秀')
elif self.score >= 80:
print(f'名前:{self.name},成績:{self.score},優')
elif self.score >= 70:
print(f'名前:{self.name},成績:{self.score},良')
elif self.score >= 60:
print(f'名前:{self.name},成績:{self.score},可')
else:
print(f'名前:{self.name},成績:{self.score},不可')
# 4、インスタンス化
tanaka = Student('Tanaka', 80)
tanaka.print_grade()
yamada = Student('Yamada', 59)
yamada.print_grade()
output
名前:Tanaka,成績:80,優
名前:Yamada,成績:59,不可
実行例2(健康管理)
- 属例
- 名前
- 体重
- メソッド
- ラーニング
- 体重 - 0.5 kg
- 食事する
- 体重 + 1.0 kg
- ラーニング
# 1、クラス定義
class Person():
# 2、属性定義
def __init__(self, name, weight):
self.name = name
self.weight = weight
# 3、returnを定義
def __str__(self):
return f'名前:{self.name},今の体重:{self.weight}KG'
# 4、ラーニングメソッドを定義
def run(self):
self.weight -= 0.5
# 5、食するメソッドを定義
def eat(self):
self.weight += 1
# 6、インスタンス化
Bob = Person('Bob', 65.0)
print(Bob)
# 7、食事する。
Bob.eat()
print(Bob)
# 8、ラーニング
Bob.run()
print(Bob)
output
名前:Bob,今の体重:65.0KG
名前:Bob,今の体重:66.0KG
名前:Bob,今の体重:65.5KG
Discussion