The 'Radiobutton' widget is used to create a single-choice interface. Pressing one widget in a group automatically deselects the one pressed last. Widgets in a group are associated with the same variable and a 'value' attribute is used when the button is selected.
# radio1.py
import tkinter as tk
root = tk.Tk() # root widget
# The same variable for several radiobuttons is used.
var = tk.IntVar() # a global variable is recommended
var.set(1) # initializing the choice, i.e. Python
label = tk.Label(root, text="Choose a language:")
label.grid()
radio1 = tk.Radiobutton(root, text="Python", variable=var, value=1,
command=lambda: print(var.get()))
radio1.grid(sticky=tk.W)
radio2 = tk.Radiobutton(root, text="Perl", variable=var, value=2,
command=lambda: print(var.get()))
radio2.grid(sticky=tk.W)
radio3 = tk.Radiobutton(root, text="Java", variable=var, value=3,
command=lambda: print(var.get()))
radio3.grid(sticky=tk.W)
root.mainloop()
Selected keyword arguments in Radiobutton() master=root # the first argument text="text label" textvariable=strvar # an alternative to 'text' width=50 # in text units variable=var command=lambda: print(var.get()) value=val # value to use when that radiobutton is selected padx=20 indicatoron=1 # (*) and the label (default) indicatoron=0 # rectangle button with the label