• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      開啟Arduino的Python之旅——發(fā)聲篇

      2022-12-07 15:32:23史澤輝
      電腦報 2022年46期
      關(guān)鍵詞:文件夾圖標(biāo)對話框

      史澤輝

      在之前的基礎(chǔ)篇和常規(guī)篇中,我們已經(jīng)分享了如何用Python驅(qū)動Arduino主控板,成功實(shí)現(xiàn)了讀取溫度濕度和光線值,以及點(diǎn)亮LED燈和燈帶。過程中我們發(fā)現(xiàn),數(shù)值的輸出只在串口顯示相關(guān)數(shù)據(jù),要是能聽到語音播報,是不是更方便更生動呢?今天我們就來用Python控制計算機(jī)發(fā)出聲音。

      控制計算機(jī)發(fā)出聲音,需要用到speech庫。首先要安裝一下這個庫,然后才能調(diào)用。使用win+r調(diào)出運(yùn)行對話框,輸入cmd進(jìn)入控制臺,輸入pip install speech,回車即可。打開編譯器IDLE,用import speech導(dǎo)入。編寫程序代碼speech.say(str),保存,按F5運(yùn)行,計算機(jī)即可把單引號里的文字以聲音的方式播報出來。注意str是字符類型,要播報的內(nèi)容要放在英文狀態(tài)的單引號里,如speech.say(‘這里是計算機(jī)發(fā)出的聲音’)。如圖1:

      然而,很多小伙伴兒會在運(yùn)行過程中出現(xiàn)錯誤提示。如圖2:

      這個錯誤提示的意思是,安裝的speech庫某一行語句有問題。按提示修改格式后,繼續(xù)保存運(yùn)行,又會出現(xiàn)新的錯誤提示,依然是程序格式問題,叫人頭疼。解決這一問題的簡單方法是,用正確的speech庫文件進(jìn)行替換。操作如下:

      按路徑C:\Users\用戶\AppData\Local\Prog rams\Python\Python37\Lib\site-packages打開相應(yīng)文件夾(注意“用戶”是你的計算機(jī)登錄的用戶名)。找到speech.py文件,用正確的speech文件進(jìn)行替換即可。(可以從正常運(yùn)行的計算機(jī)上拷貝,也可以直接百度到)

      SAPI是微軟Speech API , 是微軟公司推出的語音接口,而細(xì)心的人會發(fā)現(xiàn)從WinXP開始,系統(tǒng)上就已經(jīng)有語音識別的功能了,可是用武之地相當(dāng)之少,微軟并沒有給出一些人性化的自定義方案,僅有的語音操控命令顯得相當(dāng)雞肋。 現(xiàn)在,我們的任務(wù)就是利用SAPI進(jìn)行個性化的語音識別。

      win32com庫的安裝方法一:使用win+r調(diào)出運(yùn)行對話框,輸入cmd進(jìn)入控制臺,輸入pip install pypiwin32或pip3 install pypiwin32 或 Python -m pip install pypiwin32(根據(jù)所安裝的Python版本選擇不同的命令,安裝時會有提示)。

      win32com庫的安裝方法二:從https://sourceforge.net/projects/pywin32/files/pywin

      32/下載pywin32-221.win-amd64-py3.7.exe文件。選擇Build 221,下載和本機(jī)Python對應(yīng)版本的pywin32的版本。

      下載后,雙擊pywin32-221.win-amd64-py3.7.exe,會識別Python的安裝路徑,一路Next安裝即可。

      安裝完成后,打開IDLE編譯器,編寫程序。首先用import win32com.client調(diào)用一下系統(tǒng)客戶端包,再用speaker=win32com.client.Dispatch("SAPI.SPVOICE")調(diào)用系統(tǒng)接口。接下來就可以輸入需要文本轉(zhuǎn)語音的字符串了。

      我們簡單編寫一下體溫檢測程序,當(dāng)體溫小于37.3攝氏度,就播報str1語句內(nèi)容,否則播報str2語句內(nèi)容。如圖3:

      winsound是Windows的音頻工具接口,可以實(shí)現(xiàn)簡單的音頻播放功能。允許播放WAV文件或發(fā)出嗶嗶聲,但它僅適用于Windows。如圖4:

      Playsound是一個僅用于播放WAV和MP3文件的簡單程序包,它純Python,跨平臺,單一功能模塊,不依賴于播放聲音。使用此模塊,我們可以使用一行代碼播放聲音文件,除簡單播放外,它不提供任何功能。如圖5:

      另外,我們還可以利用Python-sounddevice、pydub、pyaudio等方式來播放各種音頻文件,有興趣的讀者可以自行嘗試。

      有了以上基礎(chǔ),我們就可以結(jié)合開源硬件Arduino主控板進(jìn)行編寫程序了。我們繼續(xù)使用pinpong庫來驅(qū)動Arduino主板,當(dāng)然你也可以試試其他庫。如圖6:

      上述程序中,我們導(dǎo)入pinpong庫和speech庫,定義了LED燈為13號引腳,從A0端口讀取光線傳感器的值。如果光線值大于等于400那么LED燈開始點(diǎn)亮,輸出“LED燈工作中”,同時音箱播報聲音。按F5運(yùn)行程序。如圖7:

      我們看到,檢測到的光線值為600以上,LED燈處于點(diǎn)亮狀態(tài)。利用這個功能,我們的創(chuàng)客作品就有聲有色,生動多了。

      作品程序完成后,我們可以將Python文件打包成exe文件分享給他人。本次分享的是利用pyinstaller打包工具對Python打包。操作步驟如下:

      安裝pyinstaller之前先安裝Python,建議安裝32位的Python版本,因?yàn)閣in64位系統(tǒng)向下兼容32位程序。如果安裝64位版本Python進(jìn)行打包,只能在win64位系統(tǒng)中運(yùn)行,在win32中是無法運(yùn)行的。

      安裝時需注意的是Add Python3.6 to path此處選項(xiàng)一定要勾選,否則后期還要對環(huán)境進(jìn)行配置,十分麻煩。

      使用win+r調(diào)出運(yùn)行對話框,輸入cmd進(jìn)入控制臺,先檢查一下當(dāng)前Python版本(事關(guān)pip和pip3的使用)。

      輸入:Python -V? (獲取Python的版本)。本文使用的是Python3.6.1版本,那么我們在安裝pyinstaller時需要使用pip3。(Python2版本使用pip)

      輸入:pip3? install  pyinstaller (若是輸入pip會出現(xiàn)錯誤提醒)。如圖8:

      安裝成功會顯示successfully installed……此時pyinstaller已經(jīng)安裝成功了。

      將需要打包的Python文件和圖標(biāo)圖片(ico格式)存放在一個文件夾中。(若是沒有圖片作為圖標(biāo),則打包時系統(tǒng)會自動生成默認(rèn)圖標(biāo))

      打開控制臺,先將路徑定位至存放目標(biāo)文件的文件夾,本文文件存放路徑為e:\Python。

      輸入打包命令:pyinstaller? -F? -i? jisuan.ico? text.py

      運(yùn)行后,出現(xiàn)building exe successfully即為打包成功。如圖9、圖10:

      返回目標(biāo)文件夾可以發(fā)現(xiàn)重新生成了4個文件。生成的exe文件就在dist文件夾中。

      我們可以看到在dist文件中生成了一個exe文件,而且圖標(biāo)也是相應(yīng)的ico圖片。

      雙擊生成的exe文件,可正常運(yùn)行。至此,我們就成功地將Python程序打包成exe文件進(jìn)行分享了。

      猜你喜歡
      文件夾圖標(biāo)對話框
      磁力文件夾
      正?;謴?fù)虛擬機(jī)
      Android手機(jī)上那些好看的第三方圖標(biāo)包
      Android手機(jī)上那些好看的第三方圖標(biāo)包
      Bootlace Worms’Secret etc.
      調(diào)動右鍵 解決文件夾管理三大難題
      中國風(fēng)圖標(biāo)設(shè)計
      電影評介(2016年24期)2017-01-04 05:41:44
      有意思的廁所圖標(biāo)
      讀者(2015年13期)2015-05-14 11:41:05
      TC一鍵直達(dá)常用文件夾
      電腦迷(2015年1期)2015-04-29 21:24:13
      快速抓取對話框中的完整信息
      電腦迷(2012年22期)2012-04-29 20:30:54
      龙门县| 霍城县| 建水县| 临清市| 桓仁| 建水县| 井陉县| 成都市| 建水县| 绥宁县| 静安区| 丰顺县| 甘泉县| 乐昌市| 南和县| 巫溪县| 青神县| 阳朔县| 扶风县| 双城市| 郸城县| 三穗县| 宁城县| 双流县| 建湖县| 盐山县| 沙湾县| 博野县| 霍林郭勒市| 盐城市| 同心县| 文成县| 长治县| 莒南县| 资溪县| 佛坪县| 巴林左旗| 全椒县| 秀山| 广汉市| 阿拉善盟|