Python 如何获取所选单选按钮的值?

Python 如何获取所选单选按钮的值?,python,tkinter,radio-button,Python,Tkinter,Radio Button,我想创建两组不同的单选按钮。用户将从任一组中选择一个选项。有一个函数可以从所选单选按钮获取值(字符串),然后打印它们。这是我的代码,但它不起作用(我是python新手) 在单选按钮中,分析要传递的参数: gumb1 = Radiobutton(root, text = "Euro", value = "Euro", variable = "btn2" 参数值和变量存储单选按钮

我想创建两组不同的单选按钮。用户将从任一组中选择一个选项。有一个函数可以从所选单选按钮获取值(字符串),然后打印它们。这是我的代码,但它不起作用(我是python新手)


在单选按钮中,分析要传递的参数:

gumb1 = Radiobutton(root,
                    text = "Euro",
                    value = "Euro",
                    variable = "btn2"
参数
变量
存储单选按钮的数据。您已正确设置了
选项。当选择单选按钮时,解释器将自动使用
值设置
变量

但你的问题就在这里:

variable = "btn2"
“btn2”
是一个字符串。但不是很有用,是吗?事实上,您正在尝试对其执行甚至不存在的方法。例如:

def funkcija():
    X = btn2.get()
事实上,根据这些信息,你几乎成功了

在脚本顶部,需要将
btn2
设置为Tkinter的
StringVar
,如下所示:

from tkinter import *
btn1 = StringVar()
btn2 = StringVar()
现在完成了,让我们更改单选按钮中的参数

gumb1 = Radiobutton(root,
                text = "Euro",
                value = "Euro",
                variable = btn2
现在,Tkinter将在选择变量时自动更新该变量。要获取该值,请执行与在
funkcija
中相同的操作

X = btn2.get()

然后btn2的值(由单选按钮更新)将不会被读取,并存储到变量
X

您能写下什么有效吗?你能把代码裁剪成更小的吗?它已经被解决了:)非常感谢!还有一个问题。为什么我必须将变量设置为root=Tk()下面的StringVar?如果我把它们放在root=Tk()上面,它就不起作用了。
X = btn2.get()