区块链技术博客
www.b2bchain.cn

python应用(2):写个python程序给自己用求职学习资料

本文介绍了python应用(2):写个python程序给自己用求职学习资料,有助于帮助完成毕业设计以及求职,是一篇很好的资料。

对技术面试,学习经验等有一些体会,在此分享。

用python写一个程序,然后在命令行上执行,看不到界面(UI),这种程序很常见了,叫命令行程序。然而很多人,特别是不懂程序的人,更需要看到的是一个有界面的,能通过鼠标操作的程序,毕竟已经迈进“窗口”的时代,虽然Dos还存在。所以,怎么用python弄出有界面的程序呢?

界面也是一个工具,所以,有没有界面工具库呢?必须得有,而且有很多个,你搜索“python界面库”就可以看到很多这方面的介绍,而我要介绍的,是python最早就有的tkinter,通过它来实现界面程序。

tkinter内置在python中,所以不用再安装,直接import进来使用就是了。沿用上一节介绍的文本转语音的程序,我现在要写一个界面程序,上面有两个按钮,一个用来选择文本文件,一个是“转换成语音”,来看看怎么实现吧。

(1)TTS的GUI程序

“`
from tkinter import *
import tkinter.messagebox as msgbox
import tkinter.filedialog as filedlg
import os
import pyttsx3
from pydub import AudioSegment
import threading

txtfile = “”
window = Tk()
pathlabel = Label(window, text=”…”)

def fileFunc():
default_dir = “文件路径”
global txtfile
global pathlabel
txtfile = filedlg.askopenfilename(title=”选择文件”, initialdir=(os.path.expanduser(default_dir)))
(path, fname) = os.path.split(txtfile)
pathlabel[“text”] = fname

def converThreadFunc(content):
outfile = “out.aiff”
tts = pyttsx3.init()
tts.save_to_file(content, outfile)
tts.runAndWait()

def convertFunc():
if len(txtfile) == 0:
msgbox.showinfo(“提示”, “请先选择文本文件”)
return
content = open(txtfile, “r”).read()
if len(content)==0:
msgbox.showinfo(“提示”, “文本文件没有内容,转换终止,不输出语音文件”)
return
t1 = threading.Thread(target=converThreadFunc, args=(content,))
t1.start()
t1.join()
outfile = “out.aiff”
AudioSegment.from_file(outfile).export(“out.mp3″, format=”mp3”)
msgbox.showinfo(“提示”, “转换成功,程序目录下的out.mp3就是最终的语音文件:%s” % os.getcwd())
os.system(“open ‘%s'” % os.getcwd())

def main():
window.title(“TTS-文本转换语音”)
window.geometry(“320×320+100+100”)
filebtn = Button(window, text=”选择文本文件”, command=fileFunc)
convertbtn = Button(window, text=”转换成语音”, command=convertFunc)
filebtn.place(x=10, y=10)
pathlabel.place(x=10, y=40)

用python写一个程序,然后在命令行上执行,看不到界面(UI),这种程序很常见了,叫命令行程序。然而很多人,特别是不懂程序的人,更需要看到的是一个有界面的,能通过鼠标操作的程序,毕竟已经迈进“窗口”的时代,虽然Dos还存在。所以,怎么用python弄出有界面的程序呢?

界面也是一个工具,所以,有没有界面工具库呢?必须得有,而且有很多个,你搜索“python界面库”就可以看到很多这方面的介绍,而我要介绍的,是python最早就有的tkinter,通过它来实现界面程序。

tkinter内置在python中,所以不用再安装,直接import进来使用就是了。沿用上一节介绍的文本转语音的程序,我现在要写一个界面程序,上面有两个按钮,一个用来选择文本文件,一个是“转换成语音”,来看看怎么实现吧。

(1)TTS的GUI程序

“`
from tkinter import *
import tkinter.messagebox as msgbox
import tkinter.filedialog as filedlg
import os
import pyttsx3
from pydub import AudioSegment
import threading

txtfile = “”
window = Tk()
pathlabel = Label(window, text=”…”)

def fileFunc():
default_dir = “文件路径”
global txtfile
global pathlabel
txtfile = filedlg.askopenfilename(title=”选择文件”, initialdir=(os.path.expanduser(default_dir)))
(path, fname) = os.path.split(txtfile)
pathlabel[“text”] = fname

def converThreadFunc(content):
outfile = “out.aiff”
tts = pyttsx3.init()
tts.save_to_file(content, outfile)
tts.runAndWait()

def convertFunc():
if len(txtfile) == 0:
msgbox.showinfo(“提示”, “请先选择文本文件”)
return
content = open(txtfile, “r”).read()
if len(content)==0:
msgbox.showinfo(“提示”, “文本文件没有内容,转换终止,不输出语音文件”)
return
t1 = threading.Thread(target=converThreadFunc, args=(content,))
t1.start()
t1.join()
outfile = “out.aiff”
AudioSegment.from_file(outfile).export(“out.mp3″, format=”mp3”)
msgbox.showinfo(“提示”, “转换成功,程序目录下的out.mp3就是最终的语音文件:%s” % os.getcwd())
os.system(“open ‘%s'” % os.getcwd())

def main():
window.title(“TTS-文本转换语音”)
window.geometry(“320×320+100+100”)
filebtn = Button(window, text=”选择文本文件”, command=fileFunc)
convertbtn = Button(window, text=”转换成语音”, command=convertFunc)
filebtn.place(x=10, y=10)
pathlabel.place(x=10, y=40)

用python写一个程序,然后在命令行上执行,看不到界面(UI),这种程序很常见了,叫命令行程序。然而很多人,特别是不懂程序的人,更需要看到的是一个有界面的,能通过鼠标操作的程序,毕竟已经迈进“窗口”的时代,虽然Dos还存在。所以,怎么用python弄出有界面的程序呢?

界面也是一个工具,所以,有没有界面工具库呢?必须得有,而且有很多个,你搜索“python界面库”就可以看到很多这方面的介绍,而我要介绍的,是python最早就有的tkinter,通过它来实现界面程序。

tkinter内置在python中,所以不用再安装,直接import进来使用就是了。沿用上一节介绍的文本转语音的程序,我现在要写一个界面程序,上面有两个按钮,一个用来选择文本文件,一个是“转换成语音”,来看看怎么实现吧。

(1)TTS的GUI程序

“`
from tkinter import *
import tkinter.messagebox as msgbox
import tkinter.filedialog as filedlg
import os
import pyttsx3
from pydub import AudioSegment
import threading

txtfile = “”
window = Tk()
pathlabel = Label(window, text=”…”)

def fileFunc():
default_dir = “文件路径”
global txtfile
global pathlabel
txtfile = filedlg.askopenfilename(title=”选择文件”, initialdir=(os.path.expanduser(default_dir)))
(path, fname) = os.path.split(txtfile)
pathlabel[“text”] = fname

def converThreadFunc(content):
outfile = “out.aiff”
tts = pyttsx3.init()
tts.save_to_file(content, outfile)
tts.runAndWait()

def convertFunc():
if len(txtfile) == 0:
msgbox.showinfo(“提示”, “请先选择文本文件”)
return
content = open(txtfile, “r”).read()
if len(content)==0:
msgbox.showinfo(“提示”, “文本文件没有内容,转换终止,不输出语音文件”)
return
t1 = threading.Thread(target=converThreadFunc, args=(content,))
t1.start()
t1.join()
outfile = “out.aiff”
AudioSegment.from_file(outfile).export(“out.mp3″, format=”mp3”)
msgbox.showinfo(“提示”, “转换成功,程序目录下的out.mp3就是最终的语音文件:%s” % os.getcwd())
os.system(“open ‘%s'” % os.getcwd())

def main():
window.title(“TTS-文本转换语音”)
window.geometry(“320×320+100+100”)
filebtn = Button(window, text=”选择文本文件”, command=fileFunc)
convertbtn = Button(window, text=”转换成语音”, command=convertFunc)
filebtn.place(x=10, y=10)
pathlabel.place(x=10, y=40)

部分转自互联网,侵权删除联系

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » python应用(2):写个python程序给自己用求职学习资料
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们