上传文件后重置 ipywidget Fileupload 按钮

Reset ipywidget Fileupload button after upload of the files

我试图让 Ipywidgets 的 FileUpload 小部件的上传(N)按钮在我上传一些文件后重置数字 N,但我不确定如何。我正在使用 Jupiter 笔记本:

uploader=widgets.FileUpload(
    accept='*.csv',  # Accepted file extension e.g. '.txt', '.pdf', 'image/*', 'image/*,.pdf'
    multiple=True  # True to accept multiple files upload else False
)

def update_list_files(*args):
    global glob_list_f            #if i make the variable global then i can take it out of the function.
    glob_list_f = list(uploader.value.keys()) 

    
uploader.observe(update_list_files, 'value')
uploader

如果我 select 3 个文件,它会产生: Upload(3)

现在,如果我 select 3 个其他文件,它会产生: Upload(6)

想要的行为将再次上传 (3)。

就我而言,我需要重新上传文件。我使用下一个逻辑来重置按钮文件上传状态:

点击处理函数:

def button_click_func(change):
 # ... business logic

  upload_alg.value.clear()  # <--- clear saved value in cache
  upload_alg._counter=0     # <--- reset counter to visualize 

连接处理程序:

upload_file_button.observe(button_click_func, 'value')