使用Python进行音频处理
编程中最常用的音频处理任务包括–加载和保存音频文件,将音频文件分割并追加到片段,使用不同的数据创建混合音频文件,操纵声音等级,应用一些过滤器以及生成音频调整和也许更多。
AudioSegment
是Pydub
中的父类。它起着可以加载,操作和保存音频文件的容器的作用。让我们用python
创建我们的第一个音频。替换,我们将需要一个测试文件,该文件可以采用任何格式,例如WAV,MP3
或任何格式。在这里,我将下载一个音频文件,就像我们从网络上抓取数据一样: 安装Pydub 就像Python Pydub
中的所有其他模块一样,也可以使用简单的命令–pip install pydub
轻松安装。
加载和播放 AudioSegment
是Pydub
中的父类。它起着可以加载,操作和保存音频文件的容器的作用。让我们用python
创建我们的第一个音频。替换,我们将需要一个测试文件,该文件可以采用任何格式,例如WAV,MP3
或任何格式。在这里,我将下载一个音频文件,就像我们从网络上抓取数据一样:
加载音频后,现在我们可以执行各种类型的音频处理,让我们从重复音频文件的一些必要步骤开始:
代码语言:javascript复制
上面我们只是简单地重复了音频,现在让我们划分并混合不同等级的音频片段
代码语言:javascript复制
现在,让我们通过应用滤镜和反转音频效果,将所有内容融合在一起,以进一步发展:
代码语言:javascript复制
如果您要保存音频文件,则可以按如下所示轻松进行操作:
代码语言:javascript复制
合成音调(由于转码问题,请自行测试)
这些处理可以是任何频率的正弦波,方波或操纵波。我们还可以执行白噪声。在下面的示例中,我将显示正弦方法,以谐波的方式为最初的15个间隔产生正弦调谐:
代码语言:javascript复制
使用Python的数字时钟
让我们看看如何使用Python创建数字时钟GUI应用程序。我将首先从导入库开始:
代码语言:javascript复制
现在,让我们定义应用程序的标题和大小。请注意,在下面的代码中,如果您想要固定的窗口并且不想最大化或最小化输出,可以将可调整大小的函数的高度和宽度都设置为True (1,1)
,可以将其设置为False(0 ,0)
:
接下来,我将定义时间的字体及其颜色,边界宽度和数字时钟的背景色:
代码语言:javascript复制
结合所有元素来定义时钟应用程序的标签:
代码语言:javascript复制
定义数字时钟的主要功能。在这里,我将标签文本设置为实时:
代码语言:javascript复制
运行并查看输出:
代码语言:javascript复制
使用Python获取桌面通知
桌面通知应用程序如何工作?
该任务待办事项清单,在该清单中我们有一个目标要实现。并且桌面通知应用程序将不断通知我们全天不同的工作和要采取的行动。
创建一个桌面通知应用程序,以提醒您每小时休息一次。您的消息和警报绝对可以是您想要的任何内容。您可以在一天,一周或一个月中列出需要做的事情,并且提醒应用程序会不断提醒您同样的事情。对于此项目,您需要安装一个称为Plyer
的Python
库,该库用于访问系统的硬件组件。使用pip
命令可以轻松安装该库pip install pyler
。。
让我们看看如何编写Python程序来获取桌面通知:
代码语言:javascript复制
将手机摄像头用作计算机视觉
对于打算创建将使用智能手机摄像头作为应用程序一部分的计算机视觉应用程序的人,将手机摄像头与Python结合使用非常有用。在这里,我正在Windows 10
上使用Python
。希望它也适用于其他操作系统,但是如果您使用的是Windows,请不要担心,只需遵循以下步骤。
在Python中使用手机摄像头的过程:
•首先,在Python中安装OpenCV库;pip install opencv-python
。•在智能手机上下载并安装ip wencam
应用程序。•安装ip wencam
应用程序后,请确保您的手机和PC连接到同一网络。在手机上运行该应用程序,然后重新启动服务器。•之后,您的相机将打开,底部带有IP地址。复制IP地址,因为我们需要在Python代码中使用它来打开手机的摄像头。
代码
代码语言:javascript复制
稍后,将显示一个OpenCV
窗口,然后执行其余的操作。要关闭窗口,只需按任意键。这是将电话的摄像头与Python连接以使用计算机视觉应用程序的方法。如果要获取一些计算机视觉教程,可以在微信公众号后台回复:计算机视觉教程。
Python音乐播放器
首先是选择一个Python GUI
框架,这里我将使用两个主要的GUI
模块来使用Python
创建音乐播放器:
•Pygame
•Tkinter
Pygame
是用于创建视频游戏的Python库。要使用Python创建音乐播放器,我们将使用Pygame
声音组件。 Tkinter
是用于创建GUI应用程序的库。在这里,我们不需要使用太多功能,只需要使用Tkinter
的askdirectory()
方法和,在下面的代码部分中看到的方法即可。然后,我们将创建一个播放,停止,暂停和继续播放之类的功能,以控制音乐播放器。构建一些功能,并使用Tkinter
在界面中创建按钮。
剩下的就是结合上面所说的内容,使用Python创建音乐播放器。
代码语言:javascript复制
Python实现人生游戏
英国数学家约翰·H·康威(John H. Conway
)想象的生命游戏是一种纸牌游戏,甚至生物有机体社会的兴衰,交替。 游戏规则:
•游戏使用无限大小的单元格的矩形网格,其中每个单元格都是空的或被生物取代。有人说,被占领的牢房还活着,而空的牢房却死了。游戏在特定时期内进行,每回合根据当前配置中生物体的划分创造一个新的“时代”。•如果一个单元还活着,并且有两个或三个活着的邻居,则该单元在互联中将保持活动状态。•没有活体邻居或只有一个活体邻居的活细胞在连续中死于孤立。•拥有四个或更多生物邻居的生物细胞会在重新中因人口过剩而死亡。•具有三个活着邻居的死细胞会导致出生,并在前后中存活。
代码
代码语言:javascript复制
从视频中提取文本
我将指导您如何使用Python从视频中提取文本。第一步是下载视频。下载视频后,您需要安装两个Python库:
•SpeechRecognition:pip install SpeechRecognition
•moviepy:pip install moviepy
安装完上述两个Python库之后,您可以从编码开始。这是将视频转换为文本的完整Python程序:
代码语言:javascript复制
执行完上述Python代码后,您需要创建一个文本文档来存储从视频中提取的所有文本:
代码语言:javascript复制
Python创建固定旋转游戏
现在,让我们看看如何使用Python创建游戏。我将基于坐立不安微调器创建一个非常简单的游戏。游戏的逻辑是,按空格键时转弯数将保持增加,并且转弯速度将降低,并在您停止按空格键时停止。
代码语言:javascript复制
(因此上传不了视频。请关注我的公众号:CoXie带你学编程
。
使用Python进行拼写校正
相反,真实单词拼写检查涉及检测并纠正拼写错误,甚至有时偶然导致了真实的英语单词(真实)。拼写校正通常从两个角度来看。非单词拼写检查是检测和纠正导致出现非单词的拼写错误。这可能来自偶然产生真实单词的实词错误(插入,删除,换位)的印刷错误,也可能是由于作者替换了错误单词的认知错误。
如何创建使用Python编程语言进行拼写校正的程序:
代码语言:javascript复制
错误的单词:['Data Scence','Mahine Learnin']更正的单词是:Data Science Machine Learning
使用Python创建Turtle图形
最初,乌龟只是一个物理对象,就像可以放在一张纸上并被指示移动的机器人一样。然后,乌龟变成了可以触摸屏幕上的可视显示器,通常被替换成任何类型的形状。即使采用纯图形格式,“乌龟”的概念也可以更轻松地表示所采取的动作,从而代表程序的功能。
乌龟具有位置,方向(乌龟面对的方向)以及多种可能的状态(乌龟在移动或不留痕迹时可以替换特定颜色的)的乌龟模块提供了一个环境,其中乌龟在二维网格上四处移动。线)和动作(向左或向右旋转;向前或向后移动)。
代码语言:javascript复制
Python的蒙蒂·霍尔问题
Monty Hall
问题是这样的:
•演出有三扇门。诸如汽车或度假之类的奖品位于一扇门的后面,另外两扇门隐藏着一文不值的奖品,称为Zonk。在有关该问题的大多数讨论中,Zonk都是山羊。•竞争者选择一扇门。我们假设参与者者不知道哪个门口举行奖品,所以参赛者只会做出随机选择。•微笑的主持人蒙蒂·霍尔打开了另一扇门,总是选择显示山羊的那扇门,并始终为参赛者提供机会以改变他们对剩下的未打开门的选择。•参赛者选择改变大门或选择坚持第一选择。
用Python模拟Monty Hall
问题很简单。我们将编写一个函数,该函数使用Python的rrandom
模块来选择隐藏价格的那扇门,同时的初始选择以及Monty
选择打开的那扇门。,然后该函数将返回一个布尔值
,指示竞争者的最终选择是否是制胜法宝:
我希望您喜欢这篇有关使用Python编程语言模拟Monty Hall
问题的文章。随时在下面的评论部分中提出您的宝贵问题。
使用Python的视频到音频转换器
将视频转换为音频文件似乎是一个奇怪的决定,但在特定情况下可能会派上用场。它最常用于录制视频的音轨或从您仅对声音感知的视频中提取其他音轨。
代码语言:javascript复制
井字游戏
在此中,我将向您介绍使用Tic Tac Toe GUI和Python上的高级Python项目。该游戏非常受欢迎,并且本身非常简单。这是一个两人游戏。在这个游戏中,有一个3×3正方形的棋盘。
这个游戏有两种基本逻辑:当两个玩家都是人类,而一个是计算机时。我将为两个玩家准备这个带有Python的井字游戏。
代码语言:javascript复制
带有Python的计算器
Kivy
是一个免费的开源Python库,可快速轻松地开发高度交互的跨平台应用程序。与其他移动开发替代产品(如Android
的Java
和iOS
的Objective C
)Kivy
比例,的执行速度相同。此外,Kivy
具有可在多个平台上运行的巨大优势,就像HTML5
一样。在这种情况下,Kivy
的运行效果最佳,因为它不依赖笨拙的浏览器,并且其许多组件都使用Cython
库在C
中实现,因此大多数图形处理都直接在GPU
中运行。我们不需要使用任何称为file.kv
的文件来内置计算器,因为计算器是一个非常简单的应用程序。
图像转换器
要建立与Python
的图像转换系统,图形用户界面,我将使用Python
中的Tkinter
库,是生成GUI
应用程序最有名的Python
框架。除了Tkinter
的,我们还需要在Python
库PIL
它代表Python
图像库。代码如下:
正如您可以看到输出窗口,它会工作一样安装在您的系统中的所有其他应用程序。您首先需要选择一个PNG
文件,然后单击按钮,PNG转换为JPG
,那么您只需要在要保存转换后的图像选择一个文件夹。
使用Python可视化棋盘
为了使用Python
编程语言创建棋盘,我将使用两个Python库。Matplotlib
用于可视化,而NumPy
用于生成算法,这将有助于我们创建和可视化棋盘。
初步和QR码阅读器
首先是安装以下三个库:Pillow
,OpenCV
和Pyzbar
。Pillow
是PIL
的扩展,它代表Python
图像库。
OpenCV
是一个著名的库,尤其是在处理计算机视觉任务时。我们需要的最后一个库是Pyzbar
,这是一个python
库,可以帮助我们读取编码和QR码。您可以使用pip
命令轻松安装所有库。
现在,接下来是编写解码函数,大多数有趣的事情将在此发生。解码功能将主要做三件事,可以列出如下:
•识别并解码要显示在相机上的条形码/ QR码。•添加了以文本形式存储在识别的条形码/ QR码上的信息。•最后,将存储的信息导出为文本文档。让我们引入在编写函数之前安装的库:
代码语言:javascript复制
现在让我们通过上面的函数来了解我所做的事情:
•首先,我们解码条形码或QR码信息。然后在其周围排列一个矩形。它可以帮助我们查看机器是否检测到条形码/ Qr码。•其次,我们在已创建的矩形上方添加文本。文本将显示解码后的信息。•第三,我们将信息导出到文本文档中。
现在,接下来是编写用于使用Python嵌入和QR码阅读器的主要功能。让我们创建我们的主要功能:
代码语言:javascript复制
现在,让我们通过上面的主要功能来了解我的工作:
•首先,我们使用OpenCV打开计算机摄像头。如果您有外部摄像机,则需要根据设备将值0更改为1。•其次,我们运行一个而循环以继续执行解码功能,直到按下“ Esc”键。否则,循环将不会停止并导致问题。•第三,我们启动第一步中打开的相机。然后关闭应用程序窗口。OpenCV完成所有工作,只需调用方法即可。•最后,我们调用main函数来触发程序。
现在,您可以通过将代码显示在笔记本电脑的摄像头上,轻松运行该代码并扫描任何条形码和QR码。
使用Python创建有声读物
PyPDF2
允许操作内存中的pdf。这个python库能够执行以下任务:
•提取有关文档的信息,例如标题,作者等。•文档按页面划分•每页合并文档•裁剪页面•将多页合并为一页•加密和解密PDF文件•和更多。
我将使用该库逐页拆分pdf文件,然后阅读每页上的文本,然后将文本发送到使用Python创建有声读物的过程的下一步。
代码语言:javascript复制
pyttsx3
库,能够重新将文本转换为语音。然后,我们重新设置pdf中读取的文本作为输入输入到文本到语音引擎:
现在,该过程的下一步是循环处理pdf文件的每一页,最后停止pyttsx3
扬声器引擎:
现在,下一步是将音频另存为mp3文件:
代码语言:javascript复制
从PDF提取文本
从PDF文件提取文本时,我们面临的最大挑战是PDF文件采用不同的文件格式。因此,首先我们需要准备一个函数,刹车可以将PDF文件的多种格式转换为所需的格式。
现在,让我们开始执行此任务,以使用Python从PDF中提取文本。首先,我们需要导入所有副本。您需要pdf2image
才能将PDF文件转换为ppm
图像文件。
我们还需要操纵路径来加入和重命名文本文件,因此我们引入os
和sys
替换。以下部分调用PIL
库,并使用pytesseract
导入图像:
我们需要初始化文档的路径和计数器,刹车稍后在pdf提取功能中使用以对文件夹中的文档进行计数:
代码语言:javascript复制
我们需要从pdf文件中删除一些不需要的文件,估计,我将创建一个新函数:
代码语言:javascript复制
首先,我将创建一个列出pdf
文件和一个Docx
文件的列表,因为这两种类型是最常用的pdf文件类型:
我们终于可以从PDF文件中提取文本了。这是pdf_extract
函数。首先,它打印从中提取文本的每个文件的名称。根据文档的大小,提取文本可能需要一些时间。此打印功能将帮助您查看当前检修出的文件:
我们可以使用函数使用Python从所有PDF文件中提取:
代码语言:javascript复制
在运行该函数之后,如果您要转到目录,您将看到一个名为result1.txt
的文本文件,其中包含所有从PDF文件提取的文本
3D图形
最基本的三维图是由(x,y,z
)三元组集合创建的线形图或散点图。与更常见的二维图类似,我们可以使用ax.plot3D
和ax.scatterd3D
函数创建这些图。签名相同。在这里,我们将引入三角螺旋,并在直线附近随机放置一些点:
轮廓三维图产品 像二维`ax.contour``绘图一样,ax.contour3D要求所有输入数据采用二维规则网格的形式,并在每个点评估Ž数据。在这里,我们将显示三维正弦函数的三维轮廓图:
代码语言:javascript复制
它们 采用值的网格划分其投影到指定的三维表面上,替代生成的三维形式非常容易可视化。这是使用线框的示例:
代码语言:javascript复制
将颜色图添加到填充的尺寸可以帮助感知正在可视化的表面的变形:
代码语言:javascript复制
图像过滤
我们将首先引入所有库和图片,以探索机器学习中的图像过滤技术。
代码语言:javascript复制
上图显示某些噪点已经减少,但是现在有些图像以前没有出现在屏幕上。让我们看看如果将图像过滤为灰度,这些标记是否仍然出现:
代码语言:javascript复制
使用Python发送电子邮件
由于python脚本将访问Gmail帐户以发送电子邮件,因此我们需要将“允许安全程度更改的应用程序”设置为“打开”。这将使我们的python程序更容易访问您的帐户。因此,建议为此创建一个临时帐户。
要使用Python发送电子邮件,我们需要创建一个称为template.txt
的文本文件。此文本文件包含电子邮件正文的格式:
然后,您应该拥有的下一个文件是CSV
文件。我将使用的文件包含需要在模板文件中占位符的细节。它包含应发送给收件人的详细信息。它可以是Excel
文件或CSV
文件。
写代码 CSV文件和模板文件准备就绪后,现在该编写代码以使用python发送自定义电子邮件了。让我们从引入必要的模块开始:
代码语言:javascript复制
我将创建一个函数来读取template.txt
文件。下面的函数返回包含template.txt
文件内容的模板对象:
现在我们需要配置SMTP
服务器。如果要与他人共享此脚本,则在脚本中包含帐户地址和密码不是一个好习惯。或者使用input()
允许用户在运行脚本时输入密码:
现在,最后一步是重建电子邮件的正文。对于此任务,我们必须:
浏览CSV文件,并为CSV文件的每一行创建一条消息。
•使用MIMEMultipart()
函数创建一条消息,替换模板中每行的详细信息以形成消息的主体,将其保存在message
变量中。•然后配置参数,例如消息主题的“从”和“到”地址。将message
变量附加到消息的主体。•最后,通过send_message()
函数发送消息。