Я очень новичок в python. Я пытался передать значение из одного метода другому в классе. Я искал вопрос, но я не мог найти правильное решение. Потому что в моем коде "if" вызывает метод класса "on_any_event", который в ответ должен вызвать мой другой метод "dropbox_fn", который использует значение из "on_any_event". Будет ли это работать, если метод "dropbox_fn" находится за пределами класса?
Я проиллюстрирую код.
class MyHandler(FileSystemEventHandler):
def on_any_event(self, event):
srcpath=event.src_path
print (srcpath, 'has been ',event.event_type)
print (datetime.datetime.now())
#print srcpath.split(' ', 12 );
filename=srcpath[12:]
return filename # I tried to call the method. showed error like not callable
def dropbox_fn(self)# Or will it work if this methos is outside the class ?
#this method uses "filename"
if __name__ == "__main__":
path = sys.argv[1] if len(sys.argv) > 1 else '.'
print ("entry")
event_handler = MyHandler()
observer = Observer()
observer.schedule(event_handler, path, recursive=True)
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()
Основная проблема здесь: я не могу назвать метод on_any_event без параметра события. Поэтому вместо того, чтобы возвращать значение, вызов "dropbox_fn" внутри "on_any_event" был бы лучшим способом. Может кто-нибудь помочь с этим?