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('请输入第三人')