看板 Python 關於我們 聯絡資訊
目前遇到colab 使用files.download下載檔案 預期下載3個, 實際下載很多個問題 在def裡print string, 也是只出現3行 files.download後加delay也一樣 目前還看不出哪來有問題, 再麻煩大家幫忙解惑 謝謝 註: out_kind.value=='全部' 才有問題 其他選項都正常 sample code: def gen_sign_file(gen_type): filename = list(uploaded.keys())[0] sign_filename = gen_type+'課程研習簽到名冊' # 預設可讀寫,若有需要可以指定write_only和read_only為True wb = load_workbook(filename=filename, read_only=True) # 獲得所有sheet的名稱 print(wb.sheetnames) doc = Document() wb.close() doc.save(sign_filename+'.docx') files.download(sign_filename+'.docx') def on_button_clicked(b): with output: output.clear_output() if out_kind.value=='全部': print("產生 全部 課程研習簽到名冊") gen_sign_file('講師') gen_sign_file('助教') gen_sign_file('學員') elif out_kind.value=='講師': print("產生 講師 課程研習簽到名冊") gen_sign_file(out_kind.value) elif out_kind.value=='助教': print("產生 助教 課程研習簽到名冊") gen_sign_file(out_kind.value) elif out_kind.value=='學員': print("產生 學員 課程研習簽到名冊") gen_sign_file(out_kind.value) out_kind = widgets.Dropdown( options= ['全部','講師','助教','學員'], value='全部', description='輸出:', disabled=False, ) button = widgets.Button(description="Click Me!") button.on_click(on_button_clicked) output = widgets.Output() display(out_kind) display(button, output) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.255.12.45 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1654751857.A.33E.html
lycantrope: 可以先把function跟widget button拆開來測試 06/10 10:07
lycantrope: 單從現有的code看不出來問題出在哪一步 06/10 10:07
UBL: 如果不使用button,直接3個gen_sign_file()也是沒問題的 06/11 00:06
UBL: 目前懷疑是files.download有問題, 因為print()也是印3次 06/11 00:09