这些项目构想很有可能会让你对这门神奇的语言产生兴趣。最棒的是,你可以通过这些有趣但也具有挑战性的项目来增强Python编程技能。
作者
JuanCruzMartinez
译者
刘雅梦来源
InfoQ
排版
Python编程时光
你知道Python是被称为全能编程语言的吗?是的,它确实是,虽然不应该在每个项目中都使用它。你可以使用它来创建桌面应用程序、游戏、移动应用程序、网站和系统软件。它甚至是最适合用于实现人工智能和机器学习算法的语言。因此,在过去的几周里,我为Python开发人员收集了一些独特的项目构想。这些项目构想很有可能会让你对这门神奇的语言产生兴趣。最棒的是,你可以通过这些有趣但也具有挑战性的项目来增强你的Python编程技能。让我们来一一看下。1.使用语音命令创建软件GUI如今,桌面应用程序开发领域已经取得了巨大进步。你能看到许多拖拽式GUI构建器和语音识别库。那么,为什么不能将它们结合在一起,通过与计算机对话来创建一个用户界面呢?这是一个全新的概念,经过一番研究,我发现还没有人尝试这样做。因此,它可能比下面提到的那些更具挑战性。下面是使用Python开始这个项目的一些说明。首先,你需要用到如下的包:
语音识别库
PAGE——拖拽式GUI构建器
PAGE的文档
PAGE是如何工作的视频
使用PAGE创建登录窗口
现在,我们的想法是对一些语音命令进行硬编码,例如:你明白我的意思了吧?可以非常简单明了地添加更多这样的命令。因为这将是一个最小可行性产品(MinimumViableProduct,MVP)。所以,如果你必须硬编码许多条件语句(例如,if…else),这是完全可以的。设置完这些基本命令后,就可以测试代码了。现在,你可以尝试在窗口中构建一个非常基本的登录表单。这一想法的主要灵活性在于它可以用于游戏开发、网站和移动应用程序。即使是使用不同的编程语言也可以。2.AI博彩机器人博彩是一种人们预测结果的活动,如果他们猜对了,就会得到回报。在过去几年中,人工智能或机器学习领域出现了许多技术进步。例如,你可能听说过像AlphaGoMaster、AlphaGoZero和AlphaZero这样的程序,它们可以比任何专业的人类玩家都能更好地玩Go(游戏)。你甚至可以获得类似LeelaZero这样程序的源码。我想表达的一点是,人工智能正在变得比我们更聪明。这意味着它可以通过考虑所有的可能性并从过去的经验中学习来更好地预测一些事情。让我们在Python中应用一些有监督学习的概念创建一个AI博彩机器人吧。要开始本项目,这里有一些你需要使用到的库。pandas——数据分析
NumPy——多维数组、矩阵和数学函数
scikit-learn——机器学习
XGBoost——梯度提升(GradientBoosting)
Matplotlib——绘图
seaborn——统计数据可视化
pickle——Python对象序列化
首先,你需要选择一种比赛(例如网球、足球等)来预测结果。现在搜索可用于训练模型的历史匹配结果数据。例如,.csv格式的网球比赛数据可以从tennis-data.co.uk网站上下载。如果你对博彩不了解,下面是它的工作原理。你可以在RogerFederer身上以1.3的赔率押10美元。
如果他获胜,你将获得10美元(实际金额),外加3美元(利润)。
如果他输了,你也会输掉你的钱(例如,10美元)。
训练完模型后,我们必须计算每个预测的置信水平(ConfidenceLevel),通过检查预测正确的次数来了解机器人的表现,最后还要