我对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”。有人能帮忙吗?