Python 如何从JSON多维添加动态dropdownlist

Python 如何从JSON多维添加动态dropdownlist,python,tkinter,python-3.7,Python,Tkinter,Python 3.7,如何从json多维追加dropdownlist追加showtext和value ShowText=DId 值=LocId 从functools导入部分 从tkinter进口* 从tkinter导入消息框 def显示值(val): messagebox.showinfo('Message',val) 返回 def CallFunc(): 数据=[{'DId':'158d0002f2f156','LocId':'9','status':'1','DateRec':'2019-08-2315:34:4

如何从json多维追加dropdownlist追加showtext和value

ShowText=DId 值=LocId

从functools导入部分
从tkinter进口*
从tkinter导入消息框
def显示值(val):
messagebox.showinfo('Message',val)
返回
def CallFunc():
数据=[{'DId':'158d0002f2f156','LocId':'9','status':'1','DateRec':'2019-08-2315:34:43'},
{'DId':'158d0002f2f431','LocId':'19','status':'1','DateRec':'2019-08-2322:29:58'},
{'DId':'158d0002f2f321','LocId':'12','status':'1','DateRec':'2019-08-23 16:15:56'},
{'DId':'158d0002f2f544','LocId':'13','status':'1','DateRec':'2019-08-27 17:53:48']
返回数据
gui=Tk()
图形用户界面几何(“500x200”)
gui.标题(“试验温度”)
gui.configure(后台=“白色”)
lab00=标签(gui,text=“选择设备:”,bg=“白色”)
lab00.grid(行=0,列=0)
option=StringVar()
Value=CallFunc()
对于范围内的i(len(值)):
菜单=选项菜单(gui,选项,值[i]['DId'])
menu.grid(行=0,列=1)
btn=按钮(gui,text=“Show”,command=partial(ShowValue,option.get())
btn.网格(行=4,列=1)
gui.mainloop()

您可以通过列表获取值:

option = StringVar()
menu = OptionMenu(gui, option, *[i.get("DId") for i in CallFunc()])
menu.grid(row=0, column=1)
对于按钮命令,可以使用
lambda

btn = Button(gui, text="Show", command=lambda: ShowValue(option.get()))
要获取json文件的值,请在
ShowValue
函数中进行查找:

def ShowValue(val) :
    for i in CallFunc():
        if val in i.values():
            message = i.get("LocId")
            messagebox.showinfo('Message',message)
            return

您可以通过列表获取值:

option = StringVar()
menu = OptionMenu(gui, option, *[i.get("DId") for i in CallFunc()])
menu.grid(row=0, column=1)
对于按钮命令,可以使用
lambda

btn = Button(gui, text="Show", command=lambda: ShowValue(option.get()))
要获取json文件的值,请在
ShowValue
函数中进行查找:

def ShowValue(val) :
    for i in CallFunc():
        if val in i.values():
            message = i.get("LocId")
            messagebox.showinfo('Message',message)
            return

谢谢你,但我想展示我做过的事情,并得到有价值的LocId。与HTML 158D0002F2F156相同,您可以修改
ShowValue
函数进行查找。谢谢,但我想显示DId并获取值LocId。与HTML 158D0002F2F156相同,然后可以修改
ShowValue
函数进行查找。