精选了20个Python实战项目(附源码),拿走就用!零基础练手不二项目!_python项目-程序员宅基地

技术标签: python  人工智能  开发语言  

Python是目前最好的编程语言之一。由于其可读性和对初学者的友好性,已被广泛使用。

那么要想学会并掌握Python,可以实战的练习项目是必不可少的。

接下来,我将给大家介绍20个非常实用的Python项目,帮助大家更好的学习Python。

大家也可根据项目的需求,自己构建解决方法,提高编程水平。

源码都整理好了,直接在文末名片自取。

① 猜字游戏

在这个游戏中,你必须一个字母一个字母的猜出秘密单词。

如果你猜错了一个字母,你将丢掉一条命。

正如游戏名那样,你需要仔细选择字母,因为你的生命数量非常有限。

效果展示


② 闹钟

闹钟是一种具有可以在预先设定的时间被激活以响铃的功能的时钟,用于唤醒打工人们。

使用Python中的DateTime模块来创建闹钟,并用Python中的playsound库来播放闹钟声音。

来测试一下,设置一个闹钟,到指定时间就会有音乐响起。

效果展示


③ 骰子模拟器

可以通过选择1到6之间的随机整数,来完成骰子模拟。

使用random.randint()函数。函数根据我们指定的开始和结束范围返回一个随机整数。

效果展示

④ 二维码

二维码是用于将数据编码和解码为机器可读的方法。

包含一个白色背景上的黑色方块网格,可以被任何成像设备(如手机)读取,并进行处理以从图案中提取所需的数据。

效果展示

打了个马赛克,防止被制裁。

⑤ 语言检测

当你需要处理包含不同语言数据,且数据非常大的时候,语言检测就派上用场了。

使用Python中的langdetect包,可以在几行代码内检测超过55种不同的语言。

效果展示

⑥ 加密和解密

密码术意味着更改消息的文本,以便不知道你秘密的人永远不会理解你的消息。

下面就来创建一个GUI应用程序,使用Python进行加密和解密。

在这里,我们需要编写使用无限循环的代码,代码将不断询问用户是否要加密或解密消息。

效果展示


⑦ URL缩短

短网址由于易于记忆和输入,因此在数字营销领域非常受欢迎。

这里给大家介绍一下,如何使用Python创建URL缩短器。

运行代码,输出如下。

# 输出
https://tinyurl.com/y4z6z2gq

⑧ 音乐播放器

音乐播放器,可让你快速轻松地管理和收听所有音乐文件。

应该不少小伙伴都使用过,网易云音乐、QQ音乐、酷狗音乐等。

这里小F将使用Pygame和Tkinter,来创建一个音乐播放器。

选择音乐文件所在的文件夹,点击播放,即可听见音乐。


⑨ 生命游戏

生命游戏由英国数学家约翰·H·康威设计的,是一种类似于生物社会的兴衰和交替的游戏。


游戏使用无限大小的矩形网格,其中每个网格都是空的或被有机体占据。被占用的细胞是活的,而空的细胞是死的。

游戏在特定时期内进行,每一轮都会根据当前配置中生物体的排列创建一个新的世代。

下一代网格的状态,是通过将以下四个基本规则应用于当前配置的每个网格来确定的:

  • 如果一个细胞还活着并且有两个或三个活着的邻居,那么该细胞在下一代中仍然活着;

  • 一个没有活邻居或只有一个活邻居的活细胞会在下一代死于孤立;

  • 有四个或更多活邻居的活细胞会因下一代人口过剩而死亡;

  • 一个只有三个活着的邻居的死细胞会导致出生并在下一代中存活;

结果如下

# 输入
board = [[1, 0, 0], [1, 0, 0], [1, 0, 0]]

# 输出
board = [[0, 0, 0], [1, 1, 0], [0, 0, 0]]

⑩ Turtle绘图

Turtle模块提供了在二维平面上移动的环境。

Turtle可以实现位置、航向和各种可能的状态和动作。

绘制时间较长,结果如下,挺好看的。

⑪ 计算器

Kivy是一个免费的开源Python库,可以快速轻松地开发高度交互的跨平台应用程序。

这里我将使用Python中的Kivy包来构建一个计算器GUI。

运行代码,出现一个计算器,非常好用!


⑫ 猜数游戏

猜数字游戏目的是猜测出程序想出的数字,基本逻辑:

  • 程序随机选择1到100之间的一个数字或任何其他数字组合;

  • 然后它会要求玩家输入它的建议;

  • 然后它会检查这个数字是否与计算机随机生成的数字相同;如果是,则玩家获胜;

  • 如果玩家的猜测不一样,那么它会检查数字是否高于或低于猜测并告诉玩家;

运行代码,来猜一猜。


⑬ 图像转换器

我们知道有大量的图像文件格式可用于存储图形数据,最流行的便是JPG和PNG。

使用Python中的Tkinter库和PIL库,创建一个将PNG图像转换为JPG的应用程序。

运行代码,选择图片,点击转换按钮,即可完成图像格式变换。


⑭ 重量转换器

重量换算是指单位值乘以标准换算值。

使用Python中的Tkinter库创建一个重量转换器应用程序。

运行代码,出现界面,输入数值,点击转换。


⑮ 年龄和性别检测

使用Python编程语言带你完成使用机器学习进行年龄和性别检测的任务。

首先需要编写用于检测人脸的代码,因为如果没有人脸检测,我们将无法进一步完成年龄和性别预测的任务。

下一步是预测图像中人的性别。在这里,我将性别网络加载到内存中,并将检测到的人脸通过网络传输,用于性别检测任务。

下一个任务是预测图像中人类的年龄。这里我将加载网络并使用前向传递来获取输出。由于网络架构与性别网络相似,我们可以充分利用所有输出来获得任务的预期年龄组来检测年龄。

运行代码,结果如下


性别是OK的,就是年龄差了点意思。

⑯ 人脸检测

构建一个检测人脸的程序是开始机器学习计算机视觉任务的好方法。

使用Python的OpenCV库进行人脸检测的任务。

原图如下。


检测结果。


⑰ 铅笔素描

使用不到20行的Python代码将图像转换为铅笔素描。

结果如下。


⑱ 文本编辑器

使用Python创建一个文本编辑器GUI,它可以创建、打开、编辑和保存文本文件。

所有小部件的排列方式应使按钮小部件位于窗口布局的左侧,而文本框小部件位于右侧。

结果如下。


⑲ 图像分割

图像分割是机器视觉应用中将数字图像划分为一组像素的关键过程之一。

看看下面的图片,糖果按特定顺序排列形成一个词。


如果具有视觉的机器人是按颜色来计算糖果的数量,那么了解糖果之间的界限对它来说就很重要。

我们可以使用散点图,根据糖果的颜色对图像进行分割。

最后我们可以根据颜色,正确地分割图像中的糖果。

结果如下。


⑳ 模拟时钟

使用Tkinter制作一个简单的模拟时钟GUI应用程序。

结果如下。


好了,以上就是今天分享的内容,大家可以自行去动手练习。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ooowwq/article/details/131492092

智能推荐

【矢量图】PyEcharts导出图片并矢量化_echarts 导出矢量图-程序员宅基地

文章浏览阅读3.3k次,点赞10次,收藏17次。前言图是门面,但朦胧美并不是文章所需要的问题处理导出图片(JPEG、PNG)的方式,网上很多就不再赘述了,这里咱还是矢量化下吧。网上说用phantomjs-prebuilt.js,我也试了没太整明白。然后 <a id="download" href="">下载</a> <script> const a = window.document.querySelector('#download') a.addEventListener('cl_echarts 导出矢量图

有关大数据的误区:数据统计≠大数据_大数据是不是是以经发生过的事情-程序员宅基地

文章浏览阅读545次。关于大数据的误区:数据统计是已经发生的事情,而大数据往往被用于还没有发生的事情预测或者推荐中,二者不能划等号。不过,无论数据统计也好,大数据也罢,都是为了使工作变得更为有效,让决策更为理性而准确。大数据太火了,被广泛应用到各行各业,而近阶段又有着明显的过热迹象。大数据到底是一个营销词汇,还是一个方法论?本文作者老李正是一家大数据服务提供商的资深员工,他所做的项目就是针对不同行业_大数据是不是是以经发生过的事情

搭建企业线上培训系统_线上培训平台部署架构-程序员宅基地

文章浏览阅读593次。企业线上培训系统的出现,一些集团公司的内部例会,决策会议或培训会议,可以通过线上统一进行,不再需要集中企业所有员工到指定地点培训。普通企业可以在外网租用线上培训系统,而对于一些涉密单位数据如何保障安全?企业线上培训系统根据网络环境有不同的部署方式,哪种部署更适合自身需求呢?1、纯内网部署企业线上培训系统,部署在防火墙内,供企业内部培训使用企业这样部署在线培训系统,所有数据都内网服务器上,丢失风险低,安全性高,并且内网网络带宽可以得到保障。连通宝采用软硬一体的部署方式,稳定性也可以得到保障。_线上培训平台部署架构

JS解构赋值-程序员宅基地

文章浏览阅读1.3w次,点赞24次,收藏42次。解构赋值语法是一种 Javascript 表达式。通过解构赋值,可以将属性/值从对象/数组中取出,赋值给其他变量。本文将讨论解构赋值的作用与其用法。_js解构赋值

21:单词替换_b2135 单词替换-程序员宅基地

文章浏览阅读665次。描述输入一个字符串,以回车结束(字符串长度<=100)。该字符串由若干个单词组成,单词之间用一个空格隔开,所有单词区分大小写。现需要将其中的某个单词替换成另一个单词,并输出替换之后的字符串。输入输入包括3行,第1行是包含多个单词的字符串 s;第2行是待替换的单词a(长度 <= 100);第3行是a将被替换的单词b(长度 <= 100).s, a, b 最前面和最后面都没有空格.输出输出只有 1 行,将s中所有单词a替换成b之后的字符串。样例输入You want som_b2135 单词替换

Android客户端线上BUG收集、反馈及定位_bug的ower是谁指的是什么意思-程序员宅基地

文章浏览阅读5.7k次。1. 线上BUG来源用户反馈用户反馈由运营或者客服或PD童鞋进行收集,对集中反应比较多的问题反馈到项目组及相关童鞋,对体验不好的地方进行产品改进。回归测试每周服务端预发和上线以后,在客户端进行回归测试工作,现在是由专门的童鞋进行回归,以后的方向是自动化回归。_bug的ower是谁指的是什么意思

随便推点

图像分割FCN全卷积神经网络_cloudfcn-程序员宅基地

文章浏览阅读1.4k次。FCN全卷积神经网络是图像分割的基础网络FCN实现了端到端的网络,输入mxm图像,输出为mxmxc的图像,其中c代表种类。思想概述FCN叫做全卷积神经网络,顾名思义所有曾都是卷积层!也就是抛掉了全连接层,这是第一个改变;再者卷积神经网络卷到最后特征图尺寸越来越少,分辨率比较小,不适合我们做图像分割,好,这里引入一个上采样的做法,卷积完之后再上采样到大尺寸图;网络又考虑层数不断叠加后原图的信息..._cloudfcn

前端页面制作思路_前端页面设计的思路-程序员宅基地

文章浏览阅读3.7k次,点赞2次,收藏5次。项目中css的页面布局,需要屡顺一下思路,在继续下面的学习。温故而知新!W3C标准:是万维网制定的一系列标准,包括结构化标准语言(html、xml),表现标准语言(css),行为标准语言(DOM,ECMAScript)组成。这个标准倡要将结构,样式,行为分离。在网页制作中,面对设计图,网页制作人员一般要遵循的原则:先考虑设计图中的文字内容和内容模块之间的关系,重点放在编写html..._前端页面设计的思路

扫地机器人-二分+贪心-程序员宅基地

文章浏览阅读120次。最大什么的最小值,最小什么的最大值就是二分。

计算机组成原理知识复习:_计算机组成原理sm信号是什么-程序员宅基地

文章浏览阅读35次。计组,知识点归纳_计算机组成原理sm信号是什么

关于vector的使用说明-程序员宅基地

文章浏览阅读843次,点赞13次,收藏23次。关于vector在实际运用中的一些说明

【noVNC】使用noVNC实现浏览器网页访问vnc(基于web的远程桌面)_网页 vnc-程序员宅基地

文章浏览阅读1.4k次,点赞14次,收藏21次。vnc novnc_网页 vnc

推荐文章

热门文章

相关标签