実装しましょう。次に入力された今年の西暦から、その人が
今年何歳になるかを計算するメソッド get_age を作成しましょう。
一週間ぐらい、サボりサボり勉強して、やっとですが。
ファイルをpractice28.pyとして、、、
#!/usr/bin/env python3
import datetime
class Person:
def __init__(self, nm):
self.name = nm
def get_age(self, year, month, day):
today = datetime.date.today()
birthday = datetime.date(year, month, day)
self.get_age = (int(today.strftime("%Y%m%d")) \
- int(birthday.strftime("%Y%m%d"))) // 10000
def show_name(self):
print(self.name)
def show_get_age(self):
print(self.get_age,"years old")
person1 = Person("Ryoma Sakamoto")
person1.get_age(1836,1,3)
person1.show_name()
person1.show_get_age()
課題は、今年何歳になるか、と固定して手加減してくれていますが、
今年の誕生日が来たら、という意味でしょうね。
それでは面白くない、いつなんどき実行しても、
正しい今の年齢が出るようにしなくちゃ、ということで、
がんばりました。
unixのdateコマンドで、いまの年月から対象者が生誕した日を
引き算して、最後に、年数以外のいらない部分を
割り算で削除し、整数だけが残る、つまり、
年数(才)だけが出るようになっています。
// 10000 のところは、そういう意味。
じぶんで考えた? な、わけないでしょ!
借りてきました。詳しい説明は下記サイトに。
ネタを云われた関数に応用するのが難儀だっただけです。
お知恵を拝借したサイト:
https://zenn.dev/wtkn25/articles/python-age-calcurate
それにしても、pythonの需要が多いのか、
サイトは多いですね。お金がなくて独学するしかない場合(私)に
良いサイトを見つけました。
解説と演習がセットになっています。英語で説明は少ないですが、
そのほうが、考えるクセづけにはいいような。
https://www.w3schools.com/python/python_classes.asp
ちなみにですが、坂本龍馬は、グラバーの手先となり、
金儲けしたかっただけ、の説には反対です。
もしもそうだったら、船中八策なんか、残さないです。
え、それさえも指図をウケて? なら殺されないでしょうが。
彼は、日本の英雄。生誕、186才でした。
いまは、どうすれば、寝ぼけた日本国民のアタマを
覚醒させられるかの時代。この惨状を目の当たりにしても、
偉いセンセイ方を崇め奉り、まだいい子になりたくて、
4回目も二の腕する人いるんですか。