首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python中级干货!你没有尝试过的Python项目!

在编程领域中,Python是一种非常强大的语言,它易于学习。对于开发人员来说,学习python和构建项目始终是一个了不起的体验。了解Python语言的基础知识,可以构建很多你想构建的项目,通过他们对Python做一个深入的了解。

下面是中级Python开发人员进行的项目。

网络项目:Web应用程序:开发人员负责构建应用程序的前端和后端部分。作为python开发人员,您的主要精力将放在实现所有业务逻辑的后端部分。您可以使用一些Python网络框架,例如Django和Flask。

1. URL缩短工具(bit.ly和TinyURL等工具),这些服务会减少URL中的字符或字母,并向用户返回一个新的简短URL。

技术细节:该应用程序的主要目的是缩短URL,当用户访问该缩短的URL时,必须将其重定向到原始URL。要生成用于缩短的URL的字符,可以使用randomstring模块的组合。您需要将原始和缩短的URL保存在数据库中,以便每当用户访问缩短的URL(几天,几个月甚至几年后)时,应用程序都会检查数据库,如果URL存在,它将重定向到原始URL,否则重定向到404页面。

附加挑战:您可以通过为用户添加自定义URL选项的功能来使该工具更加用户友好。用户更容易记住自己生成的自定义URL。

2.固定笔记

项目详细信息:使用Python构建“固定笔记”应用程序,用户可以在其中列出他/她想记住的所有内容,并且可以从任何地方访问该列表(因为它在数字平台上)。

技术细节:该项目的主要目的是允许用户保存他们的想法。每个用户都有自己的私人便笺,要创建私人便笺,您需要创建带有身份验证的帐户创建功能。您可以使用其身份验证系统随附的Django框架,但是如果您使用的是bottle或flask,则必须自己实现用户身份验证。

您还可以添加允许用户创建注释类别的功能。这样,用户将能够将他们的笔记细分为不同的类别。例如,用户可以创建一个用于编程语言的部分,一个用于数据结构和算法的部分,另一个用于数据库的部分。

如果我们讨论使用该应用程序的数据库来存储信息,那么如果您选择MySQL数据库或PostgreSQL数据库的psycopg2模块,则可以使用MySQLdb模块。您也可以使用其他模块,但这取决于您为应用程序选择的数据库。

附加挑战:很多时候,我们忘记了我们在某个地方创建了重要笔记,而那时我们希望有人可以提醒我们有关笔记。因此,您可以在此应用中添加提醒功能。此功能将允许用户设置提醒时间,他/她将通过电子邮件收到有关笔记的通知。

3.测验申请

项目详细信息:测验总是有助于测试知识,识别错误并纠正这些错误。进行在线测试是完全理解概念的最佳方法。使用Python,您可以创建一个测验应用程序,该应用程序将为用户列出一系列问题,并允许用户回答这些问题。将测验应用程序视为一种问卷。

技术细节:主要目标是设置测验(一系列问题),人们必须回答这些问题。该应用程序将显示最终分数和问题的正确答案。在这里,您需要考虑管理员用户,因为只有管理员才能创建测验或为其他用户(将参加测验)设置问题。

您需要实现帐户创建功能,以保留各个分数记录。管理员用户只需上传一个文本文件,就能使用问题和答案创建测试。您可以为文本文件选择任何格式,但是应用程序应将此文件转换为测验。在数据库中,您需要存储问题,可能的答案,正确的答案以及每个用户的分数。如果为PostgreSQL数据库选择MySQL数据库或psycopg2模块,则可以使用MySQLdb模块。您也可以使用其他模块,但这取决于您为应用程序选择的数据库。

附加挑战:添加一项功能,允许用户将计时器添加到测验中。通过这种方式,测验的创建者(管理员用户)可以确定用户应花多少秒或几分钟来解决测验中的每个问题。您还可以添加测验共享功能,用户可以在其他平台上共享有趣的测验。

GUI项目:使用Python制作自己的桌面图形用户界面应用程序。PySimpleGUI是桌面应用程序的用户友好框架之一。PyQt5是另一个高级功能强大的GUI框架。

1. MP3播放器

项目详细信息:没有播放器,无法播放音频文件的内容。音频文件是数字文件,您可以通过使用Python构建工具MP3播放器来展示自己的技能。您需要构建一个模拟物理MP3播放器的MP3播放器软件。使用此软件,将允许用户在台式机,笔记本电脑或计算机上播放MP3文件。

技术细节:目标是构建一个MP3软件,使用户可以播放MP3和其他数字音频文件。您需要集中精力构建漂亮的用户界面,以更好地吸引用户。该界面将列出可用的MP3文件。用户还可以选择列出不是MP3的其他数字音频文件。同样,用户应该能够看到正在播放的文件上的信息。您可以包括一些信息,例如文件名、长度、播放量(分钟和秒)、未播放的数量(分钟和秒)。

为了处理MP3文件和其他数字音频文件,你可以使用pygame的pymediasimpleaudio库在Python。这些库使您可以使用几行代码来处理多媒体文件。您还可以添加一项功能,允许用户创建播放列表。要存储创建的播放列表的信息,可以使用SQLite数据库的sqlite3模块。

附加挑战:添加一项功能,使用户可以重复播放当前正在播放的文件,随机播放要播放的文件列表,提高和降低音频文件的播放速度。

2.闹钟

项目详细信息:我们在日常生活中使用该警报器,该警报器可以通过声音或视觉方式提醒您某种状况。使用Python,您需要构建一个警报软件,该软件允许用户设置特定条件的时间,当条件满足时,它应该发出音频信号。该工具将在用户的便携式计算机或台式机设备上运行。

技术细节:在此项目中,您需要主要关注警报的定时和音频信号,因为主要目的是在一天中的特定时间激活音频信号。添加允许用户创建,编辑和删除警报的功能。此外,界面应显示所有活动和非活动警报。对于音频信号或提醒,您需要在软件中设置音调。您可以使用pygame库播放音频。您还需要在数据库中保存有关警报的信息,例如……警报日期,时间和音调位置。

附加挑战:添加一项功能,允许用户设置重复警报。使用此功能,用户将能够设置警报,该警报将在每周的某几天的某个特定时间响起。

命令行项目:命令行应用程序在控制台窗口中工作。您可以使用docopt,argparse和click框架来构建您的应用程序。

1.站点连接检查器

项目详细信息:当我们访问URL或网站时,大多数时候我们会在浏览器上获得所需的信息。有时网站可能会关闭,并且可能在浏览器中给出一些错误消息。由于某些服务器问题,可能会发生这种情况。在这里,您可以展示自己的技能并构建站点连接检查器。站点连接检查器通过访问URL来提供网站的状态。它会定期访问URL,并返回每次访问的结果。您可以使用此工具从一个页面监视多个网站,而不必手动访问URL来检查网站状态。

技术细节:主要目标是检查网站的状态。要实现此功能,可以使用TCP或ICMP进行连接。python中的套接字编程将帮助您建立连接。在Python中使用套接字模块,要了解有关套接字编程的更多信息,请访问链接Python Socket或Python网络编程。用户应该能够从要检查的站点列表中添加和删除站点。您可以使用docoptclickargparse为这些功能添加命令的框架。请记住,用户应该能够启动,停止工具并确定间隔。您还需要保存已检查文件的列表,并且可以使用SQLite数据库的sqlite3模块来执行此操作。

附加挑战:用户需要继续检查命令行以检查站点的状态。为避免这种情况,您可以添加通知功能(例如:后台播放的声音),以在网站状态更改时提醒用户。维护数据库中站点的先前状态,因为

2.文件重命名工具

项目详细信息:很多时候,我们需要根据某些约定对目录中的文件进行重命名。例如,File001.jpg,File002.jpg,File003.jpg,然后继续。手动执行此任务可能是重复的和无聊的。为避免此手动工作,您可以创建一个工具来重命名大量文件。

技术细节:主要目标是创建一个工具,在几秒钟内重命名文件而不会出错。要重命名目标文件,可以使用  Python中可用的ossysshutil库。用户应该能够通过自己选择的命名约定来重命名目录中的所有文件。如果您知道regex的工作原理,则regex模块将在这里帮助匹配所需的命名模式。如果用户通过命名约定(例如myfiles)作为命令的一部分,则该工具应将文件重命名为myfiles123(其中123是数字)。

附加挑战:实施一项功能,允许用户仅选择特定数量的文件进行重命名,而不选择所有文件。对于此功能,该工具将根据用户要求根据字母顺序,文件创建时间或文件大小对文件进行排序。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20201022A09OIU00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券