最近要考試,希望能得到好成績。但是自己沒時間靜下心來好好閱讀,希望自己能夠善用時間,在公車、火車上用[聽],自己跟著聲音將書中的重點念出來。目前同學已經將書中重點整理成文字電子檔,但是聲音要怎麼出來。有兩種方法:1.傳統方法 2.程快速方法。其中
1.傳統方法:
所需設備:錄音機:一台、文字稿:一份、人:一個
方式:人照著文字稿一字一句唸出聲音,錄音機將聲音錄起來。
缺點:耗時
優點:聲音非常有感情
2.快速方法:
所需設備:電腦:一台、文字稿:一份
方法:電腦將文字稿轉成mp3
優點:省時
缺點:聲音沒有感情
這兩種方法當然各有利弊。現在要針對同學整理重點文字電子稿,快速做出mp3。讓自己在車上反覆聽,將知識隨著自己耳聽口說融入腦海中。
最後完成程式:
下載檔案。解壓密碼:demo1234
教學影片:
以下是程式原始碼的內容:
程式目的:讀取Txt.txt 將之轉成merge.mp3
程式名稱:Txt2Mp3Python.py
程式內容:
from gtts import gTTS
import os
mp3_path=str(os.path.abspath(os.getcwd()))+'\\mp3\\'
i = 0
merge_file = list()
# 一行一行地讀取Txt.txt,轉成 001.mp3 002.mp3 003.mp3 ...
TxtFileName = 'Txt.txt'
with open(TxtFileName) as f:
for line in f.readlines():
i=i+1
myobj = gTTS(text=line, lang='zh', slow=True)
myobj.save(mp3_path+str(i).zfill(3)+'.mp3')
merge_file.append(mp3_path+str(i).zfill(3)+'.mp3')
merge_file_mp3 = list()
# mp3資料夾內mp3 合併成 merge.mp3
for j in merge_file:
with open(j,'rb') as f:
merge_file_mp3.append(f.read())
with open('merge.mp3','wb') as f:
for j in merge_file_mp3:
f.write(j)
文字稿名稱:Txt.txt
文字稿內容:
誠信,如同一輪明月普照大地,以它的清輝驅盡人間的陰影;誠信如一束玫瑰的芬芳,能打動有情人的心。無論時空如何變幻,都閃爍著誘人的光芒。有了她,生活就有了芬芳,有了她,人生就有了追求!
它掌握在人手上,會讓太多的是是非非,太多的流言蜚語,頓時暗淡,進而煙消雲散它們失去了存在的理由。它平凡而又高深,簡單而又複雜,於是,上帝讓它擔負起了開啟成功之門的重任,可曾有多少人懷疑它被藏在了天使的翅膀里,他們總是仰望天空去尋找它,卻不知它就在地上,就在每個人身邊,只不過有人把它看作是一種裝飾品罷了。
從古時起,金鑰匙便散布在人間的每個角落並早被古人意識著。有人不屑;有人追求;有人成功。還有古語為證:成在學、思、行,行在誠、實、信、車無轅不行,人無信不立、有德有才者,謂之君子;有德無才者,謂之賢人;有才無德者,謂之小人。上述三句古言也反映了誠信、成人、成才的關係。其中成在學、思、行,行在誠、實、信就已經高度概括了誠信、成人、成才的關係,誠信是基礎,然後才談得上探索如何成人與成才。
要注意才不等於財,誠信與財富無關但誠信遠比財富重要。有的人富了,反而離誠信遠了,離平庸近了;有的人很窮,卻擁有了誠信,且無處不在。誠信需要用互動來維持,它是有回報的,然而誠信又並非簡單地視為感情投資,它並不是要你稍微有了一點資本以後,你就可以讓別人誠信於你,而不是你對別人誠信。人的一生就是在相信別人和讓別人相信自己中度過的。從相信別人到相信自己彷彿更是順風順水的事。由此綜觀中國歷史,誠信曾引出了多少時代驕子。
大家有沒有想過,沒有誠信,這個世界會是什麼樣子呢。孩子說謊、朋友違約、貪官吟喔不決、奸商東遊西盪,到處充滿爾虞我詐,勾心鬥角。人人都生活在欺騙的面具下面,你的眼睛還可以相信誰呢。料是誰都會一籌莫展,終日人心惶惶,那活在世間又能得到什麼樂趣呢。人類文明又怎能前進呢。一個言而無信的人,他又怎能保住人格的最低限度。此類人繁衍凝聚成的又是怎樣的一種族魂、國格呢。長此下去,人類文明將停滯不前。有誰還想重複國王新衣的故事呢。還是這話說得好:要使社會上所有人都講誠信,那未免過於天真,而若連講誠信的人都找不出,那又未免過於墮落。
誠信是另類的大樹,濃郁挺拔,無論雨有多大,它都始終婆娑搖曳著。誠信是一面鮮明的旗幟,迎風搖曳,無論風有多烈,它都始終隨風舞動著。
文字稿資料來源:
請問有沒支援英文, 我把lang='en'後, 得到錯誤如下,謝謝.
回覆刪除Traceback (most recent call last):
File "C:\Users\TsaiWing\Downloads\mp3Python\Txt2Mp3Python.py", line 13, in
myobj.save(mp3_path+str(i).zfill(3)+'.mp3')
File "C:\Users\TsaiWing\AppData\Local\Programs\Python\Python310\lib\site-packages\gtts\tts.py", line 329, in save
self.write_to_fp(f)
File "C:\Users\TsaiWing\AppData\Local\Programs\Python\Python310\lib\site-packages\gtts\tts.py", line 310, in write_to_fp
for idx, decoded in enumerate(self.stream()):
File "C:\Users\TsaiWing\AppData\Local\Programs\Python\Python310\lib\site-packages\gtts\tts.py", line 260, in stream
prepared_requests = self._prepare_requests()
File "C:\Users\TsaiWing\AppData\Local\Programs\Python\Python310\lib\site-packages\gtts\tts.py", line 209, in _prepare_requests
assert text_parts, "No text to send to TTS API"
AssertionError: No text to send to TTS API
您可能需要安裝套件gTTS。請下指令:pip install gTTS
刪除我改寫成英文版。並且編譯成EXE。網址:https://skjhcreator.blogspot.com/2022/07/zh-en.html
刪除您可以到那去下載英文版
我是用visual studio code + python 3.9.謝謝改編英文版,可用.大大幫助.
刪除給個可能不太重要的建議,可以在import套件時使用try,然後在expect裡面用os.system('pip install ...')直接給使用者安裝套件,這樣的好處是轉成exe時就不用大費周章告訴使用者要安裝哪些套件,在大專案要import很多東西時特別好用。
刪除感恩!!原來還可以這樣!!太棒了!!感恩!!
回覆刪除