函数相互嵌套时出现问题

python编程,希望能做一个包含三个人的抽奖程序,第一个函数是要随机抽取三个人中的一个,第二个函数是要通过外界输入确定三人名单

import random
import time

def choujiang(q,w,e):  
    luckylist = [q,w,e]  
    a = random.choice(luckylist)  
    print('开奖倒计时',3)
    time.sleep(1)
    print('开奖倒计时',2)
    time.sleep(1)
    print('开奖倒计时',1)
    time.sleep(1)
    image = '''
    /\_)o<
    |      \\
    | O . O|
    \_____/
    '''
    print(image)
    print('恭喜'+a+'中奖!')
    
def choujiangmingdan():
    q= input('请输入第一人')
    w= input('请输入第二人')
    e = input('请输入第三人')
        
def main():
    choujiangmingdan()
    choujiang(q,w,e)
    
main()

运行结果及报错内容
Traceback (most recent call last):
  File "/home/python-class/practice/apps-1-id-5cd9765d19bbcf00015547b3/root/main4.py", line 35, in <module>
    main()
  File "/home/python-class/practice/apps-1-id-5cd9765d19bbcf00015547b3/root/main4.py", line 33, in main
    choujiang(q,w,e)
NameError: name 'q' is not defined 

我想要达到的结果

程序能够运行

choujiangmingdan()函数中q,w,e不作声明是局部变量,不能传递到函数外部
所以要用全部变量声明: global q,w,e , 代码如下:

def choujiangmingdan():
    global q,w,e
    q= input('请输入第一人')
    w= input('请输入第二人')
    e = input('请输入第三人')