tkinter怎么获取listbox选中的值

问题遇到的现象和发生背景

我想要将listbox鼠标选中的值赋给一个变量,然后再点击button将变量的值赋给label

问题相关代码,请勿粘贴截图
from tkinter import *

def selectjob(event):
    print(lbox1.curselection())  # 输出选定项的序号
#
    a = lbox1.get(lbox1.curselection())  # 输出选定项的文本

def show1():
    # lb1.configure(text=lbox1.get(lbox1.curselection()))
    lb1.configure(text=a)


def show2():
    # lb2.configure(text=lbox1.get(lbox1.curselection()))
    lb2.configure(text=a)


root = Tk()
root.title('a')
root.geometry('500x500')

lbox1 = Listbox(root, height=6)  # 只显示6行的列表框
# lbox1.grid(padx=10, pady=10)
lbox1.pack()
tuple_a = ('北京', '上海', '天津', '西藏', '新疆', '山东',
           '湖北', '广东', '广西', '湖南', '云南', '香港')  # 先定义一个元组
lbox1.insert(END, *tuple_a)  # 插入元组

lbox1.bind("<<ListboxSelect>>", selectjob)  # 绑定虚拟选定事件

lb1 = Label(root)
lb1.pack()

lb2 = Label(root)
lb2.pack()

btn1 = Button(root, text='第一', command=show1())
btn1.pack()
btn2 = Button(root, text='第二', command=show2())
btn2.pack()



root.mainloop()

运行结果及报错内容

NameError: name 'a' is not defined

我的解答思路和尝试过的方法
我想要达到的结果

listbox.curselection() #返回选取的索引,是一个元组