千家信息网

怎么用python做一个随机点名的程序

发表于:2024-11-27 作者:千家信息网编辑
千家信息网最后更新 2024年11月27日,本篇内容介绍了"怎么用python做一个随机点名的程序"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
千家信息网最后更新 2024年11月27日怎么用python做一个随机点名的程序

本篇内容介绍了"怎么用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 randomimport 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()

用户要输入名单文件的路径例如

这时我们运行一下程序,将名单的路径输入看看效果

三、使用pyttsx3模块

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做一个随机点名的程序"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0