インスタンス化するのと同じように、クラスからメソッドを呼び出すことはできますか?
次のことを試しましたが、取得し続けました
Base Class:
class A(object):
""" Parent class """
def __init__(self, **kwargs):
# query parameters
self.start_time = kwargs.get('start_time', None)
def set_query_starttime(self, str_time):
""" sets query start time """
if self.verbosity:
print("I: Set query start time parameter")
if not str_time:
return
utc_start_time = self._format_time(str_time)
try:
self.query.SetStartTime(utc_start_time.tm_year,
utc_start_time.tm_mon,
utc_start_time.tm_mday,
utc_start_time.tm_hour,
utc_start_time.tm_min,
utc_start_time.tm_sec)
except pythoncom.com_error as error:
e = format_com_message("Failed to format date")
raise Error(e)
クラスをインスタンス化するのと同じように、基本クラスをインスタンス化し、set_query_starttime メソッドを呼び出したいと思います。
myStartTime = "Sun Nov 03 20:00:00 2013"
myEndTime = "Sun Nov 03 21:00:00 2013"
test = A(start_time = A.set_query_starttime(myStartTime))
しかし、取得し続けました: TypeError: unbound method set_query_starttime() must be called with A instance as first argument (代わりに str を取得)
基本クラスの set_query_starttime 関数に @staticmethod を追加しようとしましたが、それでも同じエラーが発生します。