Python 2.7 在Tkinter for python 2.7中将OptionMenu选择保存到变量

Python 2.7 在Tkinter for python 2.7中将OptionMenu选择保存到变量,python-2.7,tkinter,openpyxl,optionmenu,Python 2.7,Tkinter,Openpyxl,Optionmenu,我正在Tkinter中制作一个GUI,其中包含用户输入信息,并通过openpyxl将其写入excel。我有一些OptionMenu小部件,我希望能够将用户从下拉菜单中选择的任何内容保存到一个变量中,然后将其写入文件。 以下是我到目前为止的情况: self.equipment = StringVar(top) self.equipment.set("10077") self.e18 = OptionMenu(top, self.equipment,'10077','G214

我正在Tkinter中制作一个GUI,其中包含用户输入信息,并通过openpyxl将其写入excel。我有一些OptionMenu小部件,我希望能够将用户从下拉菜单中选择的任何内容保存到一个变量中,然后将其写入文件。 以下是我到目前为止的情况:

    self.equipment = StringVar(top)
    self.equipment.set("10077")
    self.e18 = OptionMenu(top, self.equipment,'10077','G2143','G2145','17727')
    self.e18.grid(row=13, column=1, sticky=E+W)
稍后,在另一个函数中,我将其分配给一个变量:

    equipment = self.equipment
然后我将其写入一个文件:

    ws1['D18'] = str(equipment)
当我打开文件时,单元格中显示的不是用户选择的字符串,而是:PY_VAR16

输入框中的所有其他信息都完美地写入excel。有人知道如何将选项菜单选择保存为字符串,以便写入excel吗?这个小部件是否有一个与.get()命令等效的命令?提前谢谢

这个小部件是否有一个与.get()命令等效的命令

根据,StringVar确实有一个
get
方法。我建议更换

ws1['D18'] = str(equipment)


我为此花了好几个小时,我发誓我试过了,但我想不会。非常感谢。
ws1['D18'] = equipment.get()