本篇內容介紹了“怎么用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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。