用python写一个让台下观众感到紧张的点名程序,所有人名在屏幕上滚动显示,在滚动至要抽取的人时停止滚动,名单通过excel文件导入,该如何实现呢?代码如下
import pandas as pd
import random
import time
# 读取Excel文件,获取人名列表
df = pd.read_excel('names.xlsx')
names = df.iloc[:, 0].tolist()
# 输入抽取的人数
num = int(input('请输入抽取的人数:'))
# 随机抽取人名
selected_names = random.sample(names, num)
selected_index = [names.index(name) for name in selected_names]
# 人名滚动显示
print('请台下观众注意,现在开始抽取幸运观众...')
speed = 0.1 # 初始滚动速度
while True:
for i, name in enumerate(names):
if i in selected_index:
print(name, end=' ')
time.sleep(1) # 停顿1秒,让观众感到紧张
break
else:
print(name, end=' ')
time.sleep(speed)
print()
if i in selected_index:
break
print('恭喜以下观众被抽中:')
for name in selected_names:
print(name)