如何从列表中选择一个复选框并在jupyter笔记本中获取选定的值

问题描述 投票:1回答:1

我想在木星笔记本中获得以下结果:enter image description here

我尝试了Tkinter和ipywidgets库,但对我没有任何帮助

jupyter-notebook checkboxlist
1个回答
0
投票

这是错误的代码,但是可以,并且我没有时间写出更好的代码:

list_check = ['check1', 'check2', 'check3', 'check4']

from tkinter import *
class Checkbar(Frame):
    def __init__(self, parent=None, picks=[], side=LEFT, anchor=W):
        Frame.__init__(self, parent)
        self.vars = []
        for pick in picks:
            var = BooleanVar()
            chk = Checkbutton(self, text=pick, variable=var)
            chk.pack(side=side, anchor=anchor, expand=YES)
            self.vars.append(var)
    def state(self):
        return map((lambda var: var.get()), self.vars)

if __name__ == '__main__':
    root = Tk()
    lng = Checkbar(root, list_check)
    #tgl = Checkbar(root, ['English','German'])
    lng.pack(side=TOP,  fill=X)
    #tgl.pack(side=LEFT)
    lng.config(relief=GROOVE, bd=2)


    def allstates():
        print(list(lng.state()))
       #return bool_check_list

    Button(root, text='Peek', command=allstates).pack(side=RIGHT)
    root.mainloop()

for i in range(len(list(lng.state()))):
    if list(lng.state())[i]==True:
        print(list_check[i])
© www.soinside.com 2019 - 2024. All rights reserved.