本篇内容介绍了“怎么用python做一个随机点名的程序”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
import random #导入随机模块 import pyttsx3 #导入第三方语音模块 listen = pyttsx3.init() #初始化一个变量 txt_path = input('请输入txt文件的path:') #使用者输入名单文件的路径(名单文件为txt,一行只能有一个姓名,姓名必须在行首不能有空格) txt = open(f'{txt_path}','r',encoding='utf-8') #打开名单文件 name_list = [] #创建空列表用于存储名单 for i in txt: #for循环遍历 i = i.replace('\n','') #处理字符串将换行符去掉 name_list.append(i) #添加到姓名列表里 print(name_list) #打印名单 txt.close() #关闭名单文件 while True: #永真无限循环 if len(name_list) == 0: #当名单里所有人都被点到过一次时结束 print('结束') break r_num = random.randint(0, len(name_list) - 1) #创建随机数 a = input('输入b退出,其他值继续:') #让用户选择继续点名还是退出点名 if a == 'b': #当用户输入b退出即退出 print('结束') break else: #否则就开始随机点名 print(f'本次被点到名的是:{name_list[r_num]}') listen.say(f'{name_list[r_num]}') #输出姓名语音 listen.runAndWait() #运行语言 name_list.pop(r_num) #将点过名的去除掉以防重复 print() #间隔作用
将代码分割成四部分
需要两个模块,一个内置模块一个第三方模块分别是:random、pyttsx3(这个是第三放模块,需要安装).
import random import pyttsx3
txt_path = input('请输入txt文件的path:') #使用者输入名单文件的路径(名单文件为txt,一行只能有一个姓名,姓名必须在行首不能有空格) txt = open(f'{txt_path}','r',encoding='utf-8') #打开名单文件 name_list = [] #创建空列表用于存储名单 for i in txt: #for循环遍历 i = i.replace('\n','') #处理字符串将换行符去掉 name_list.append(i) #添加到姓名列表里 print(name_list) #打印名单 txt.close()
用户要输入名单文件的路径例如
这时我们运行一下程序,将名单的路径输入看看效果
listen = pyttsx3.init() listen.say('输出语音') listen.runAndWait() #开始输出语音
注意pyttsx3模块是要自己下载的,下载方式就是在cmd里输入pip install pyttsx3这个命令即可
while True: #永真无限循环 if len(name_list) == 0: #当名单里所有人都被点到过一次时结束 print('结束') break r_num = random.randint(0, len(name_list) - 1) #创建随机数 a = input('输入b退出,其他值继续:') #让用户选择继续点名还是退出点名 if a == 'b': #当用户输入b退出即退出 print('结束') break else: #否则就开始随机点名 print(f'本次被点到名的是:{name_list[r_num]}') listen.say(f'{name_list[r_num]}') #输出姓名语音 listen.runAndWait() #运行语言 name_list.pop(r_num) #将点过名的去除掉以防重复 print() #间隔作用
随机点名是根据创建随机数然后名单根据随机数索引来达到随机的效果。。。
“怎么用python做一个随机点名的程序”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。