加入收藏 | 设为首页 | 会员中心 | 我要投稿 晋中站长网 (https://www.0354zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 移动互联 > 评测 > 正文

面向中级 Python 开发人员的 13 个项目构想

发布时间:2019-08-27 22:53:49 所属栏目:评测 来源:skura
导读:本文转自雷锋网,如需转载请至雷锋网官网申请授权。 学习 python 的基础知识是一种美妙的体验。但是,学习的喜悦可以被对实践项目的渴望所取代。想要建立项目是正常的,因此需要对项目的构想。 但问题是,有些项目对于中级的 Python 开发人员来说过于简单

当你访问一个 URL 时,你期望能看到请求的页面。但情况并非总是如此。有时候,网站可能会关闭,所以你不会得到想要的结果。相反,你将收到错误消息。你可以不断地尝试一个关闭的网站,直到你得到你需要的信息。

这是站点连接检查器项目的切入点。站点连接检查器访问一个 URL 并返回该 URL 的状态:它是活动的还是非活动的。站点连接检查器将每隔一段时间访问 URL,并返回每次访问的结果。

站点连接检查器不必手动访问 URL,而是可以为你完成所有这些手动工作。这样,你只会得到检查结果,而不必花时间在浏览器上,等待站点上线。

站点连接检查程序示例

以下是站点连接检查器思想的一些实现:

  • Ping

  • Site24x7

技术细节

本项目的主要目标是检查站点的状态。因此,你需要编写代码来检查网站的状态。

你可以选择对连接使用 TCP 或 ICMP。socket 模块是要检查的模块。你还可以阅读 Python 中的 socket 编程指南。

通过选择的框架(无论是 docopt、click 还是 argparse 框架),你可以添加命令以允许用户从要检查的站点列表中添加和删除站点。

用户还应该能够启动工具,停止它,并确定时间间隔。

由于必须保存要检查的文件列表,因此可以将其保存到文件中(仅保存站点列表),也可以通过 sqlite3 模块使用 SQLite 数据库。

额外的挑战

应用程序可以检查站点的连接状态,并将结果显示到命令行。但这将要求用户继续检查命令行。

你可以增加挑战并实现通知功能。通知功能可以是在后台播放的声音,用于在网站状态更改时提醒用户。你需要一个数据库来存储站点的以前状态,这是工具在状态改变时唯一能辨别的方法。

批量文件重命名工具

有时,你需要根据某些约定命名目录中的所有文件。例如,你可以将目录中的所有文件命名为 file0001.jpg,其数字根据目录中的文件数增加。手动操作可能会带来压力和重复性。

批量文件重命名工具允许用户重命名大量文件,而无需手动重命名文件。

这样可以节省用户很多时间。它省去了他们做无聊的重复工作和犯错误的麻烦。使用批量文件重命名工具,用户可以在几秒钟内重命名文件,而不会出现任何错误。

批量文件重命名工具示例

以下是批量文件重命名思想的一些实现:

  • Ren

  • Rename

技术细节

这个项目的主要目标是重命名文件。因此,应用程序需要找到一种方法来操作目标文件。the os、sys 和 shutil 库在本项目的大部分地方都会用到。

用户可以使用命名约定重命名目录中的所有文件。因此,他们应该能够传递选择的命名约定。如果您了解 Regex 的工作原理,Regex 模块将帮助匹配所需的命名模式。

用户可能希望将诸如 myfiles 之类的命名约定作为命令的一部分传递,并希望该工具重命名所有文件,如 myfiles XYZ,其中 XYZ 是一个数字。他们还应该能够选择要重命名文件的目录。

额外的挑战

这个项目的主要挑战是重命名目录中的所有文件。但是用户可能只需要命名一定数量的文件。要测试你的技能,你可以实现一个功能允许用户选择要重命名的文件数,而不是所有文件。

请注意,仅重命名一定数量的文件需要工具根据字母顺序、文件创建时间或文件大小对文件进行排序,具体取决于用户的要求。

目录树生成器

目录就像系列树:每个目录都与其他目录有特定的关系。除了一个空的根目录之外,任何目录都不能单独存在。

当你处理文件和目录时,很难看到目录之间的关系,因为你只能看到当前目录中存在的内容。你要么使用文件管理器,要么使用命令行。

使用目录树生成器,你可以像树或映射一样查看文件和目录之间的关系。

这样更容易理解文件和目录的位置。当你解释某些概念时,目录树映射很重要,目录树生成器使你更容易获得文件和目录关系的可视化表示。

目录树生成器示例

以下是目录树生成器思想的一些实现:

  • Tree

  • Dirtreex

技术细节

目录树生成器的主要目标是可视化文件和目录之间的关系。OS 库在列出所选目录中的文件和目录时非常有用。

使用 docopt 或 argparse 这样的框架有助于抽象很多东西,使你能够专注于为应用程序的逻辑编写代码。

在应用程序的逻辑中,你可以决定如何表示文件或目录。使用不同的颜色是一种很好的方法。可以使用 colored 库以不同颜色打印文件和目录。

你还可以决定目录树生成器的深度。例如,如果一个目录有十二层的子目录,那么你可能决定只进行到第五层。

如果你愿意,还可以让用户决定目录树生成器的深度。

额外的挑战

因为生成的目录树的结果将在命令行上,所以你可以更进一步。你可以让生成器创建目录树的图像,因此它基本上将文本转换为图像。

你会发现 pillow 库很有用。

项目工作建议

从事项目可能很困难,但是,项目的动机和兴趣会使它不那么令人生畏。

如果你对一个项目感兴趣,你将能够投入时间去研究,并找到能帮助你完成这个项目的库和工具。

以下是一些建议:

  • 找到激励的源泉

  • 将项目分解为子任务

  • 研究子任务

  • 构建每个子任务,一次一步

  • 如果你被困住了,请寻求帮助

  • 将子任务放在一起

结论

在本文中,你已经看到了一些你可能会感兴趣的 Python 项目构想。

项目理念涵盖了一系列平台,你看到了 Web、GUI 和命令行平台的项目思想。

你可以选择在不同的平台上构建项目。以 URL 缩短器为例,你可以选择在 Web、GUI 或命令行上构建它。

由于你是一个中级的 Python 开发人员,这些项目可能非常具有挑战性,但也很有趣。

使一个项目成功的最好方法就是开始行动。当你完成项目,你会发现自己从中受益匪浅!

(编辑:晋中站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读