#author("2020-02-05T18:16:59+09:00","default:yakumo_murakami","yakumo_murakami")
[[今さらPython]]
関数的なものって思ったけど、今どきならやっぱりクラスでしょ。
* サンプルコード [#u379d5c4]
それじゃ、時間を取得して30分後を返すようなものを作ってみるわ。戻り値のあたりがRubyな人には困惑の元なので、そこに気をつけて。
import time
import datetime
class Jikoku():
def momog(self,jkk):
return(str(jkk.hour) + "時" + str(jkk.minute) + "分" + str(jkk.second) + "秒")
def now(self):
return(datetime.datetime.now())
def __init__(self):
self.dt = self.now()
self.answer = self.momog(self.dt)
self.momotime = self.dt + datetime.timedelta(minutes=30)
self.answer2 = self.momog(self.momotime)
#
mx = Jikoku()
print(mx.answer)
print(mx.momotime) # 桃岩時計
print(mx.answer2)
** ちょっと解説 [#v8dc6891]
あいかわらずendがないけど、Rubyでクラス使ったことのある人ならわかるでしょ。
__init__ はrubyの initialize にあたるようで、クラスオブジェクトが作られた時に呼ばれるみたいね。普通に self.value が外から参照できるのも便利よね。
戻り値は return で返せるみたい。このへんもわかりやすいわね。
* 実行結果 [#v0298518]
18時13分36秒
2020-02-05 18:43:36.787171
18時43分36秒