Python是世界上使用最广泛的编程语言之一,并且可以为其通用性质做出贡献,这使其成为解决各个领域问题的合适工具。使用Python,您不仅可以为网络开发程序,还可以为桌面和命令行开发程序。Python可以适合各种技能水平的程序员,从学生到中级开发人员,再到专家和专业人士。但是每种编程语言都需要不断学习,Python也是如此。

如果您真的想获得深入的实践知识,没有比使用Python更好的方法来进行一些很棒的项目,这些项目不仅可以让您在空闲时间忙碌,而且可以教您如何获得更多有用的Python知识。

选择项目平台

Python可以说是一门非常通用的编程语言,您可以用它构建许多漂亮的程序来增强对该语言的控制。与理论相比,拥有更多的实践知识至关重要,尤其是在学习编程语言(例如Python)时。

但是在我们深入研究为您推荐的有趣项目之前,您必须确定要在哪个平台上工作。本文提到的项目的平台可以分为以下三类:

网站

构建Web应用程序使您和其他所有人都可以通过Internet从任何地方访问它。为此,您需要在实现业务逻辑的应用程序的前端,可视部分和后端进行工作。Django,Flask和Web2Py等工具和框架是您可以使用的许多选项中的一部分。

客户端程序

客户端程序也非常常用,可以满足相当大的用户群。在构建桌面应用程序时,Python使您可以使用其PySimpleGUI软件包轻松开发一个,该软件包允许您使用Python构建所有必要的元素。PyQt5框架还提供了高级GUI构建元素,但学习曲线更陡峭。

命令行程序

命令行程序仅在控制台窗口中工作,根本没有GUI。用户交互是通过命令进行的,它是与程序进行交互的最古老的方法,但不要因为缺乏实用性而将其缺少GUI视为错误。数以百计的顶级企业依靠命令行程序执行日常业务活动。要构建命令行程序,可以使用docopt,Python Fire,plac和cliff等工具。

针对Python开发人员的Python项目创意

如果您已决定要使用的平台,那么让我们直接进入项目。下面提到的是针对所有技能水平的开发人员的一些有趣的项目,这些项目能够显著提供您的Python技能。

1. 内容聚合(Content Aggregator)

互联网是数百万人寻找信息的主要信息来源。对于那些寻找有关特定主题的大量信息的人,可以使用内容聚合器节省时间。

内容聚合器是一种工具,可从一个地方的大量网站收集并提供有关主题的信息。首先,您可以利用requests来处理HTTP请求,利用BeautifulSoup来解析和抓取所需信息,还可以利用数据库来保存收集的信息。

内容聚合示例:

  • alltop.com
  • hvper.com

2. 短网址服务(URL Shortener)

URL是导航到Internet上任何资源(无论是网页还是文件)的主要来源,有时,其中一些URL可能很大,带有奇怪的字符。短网址服务在减少这些URL中的字符并使其易于记忆和使用方面起着重要作用。

短网址服务的思想是使用random和string模块从输入的长URL生成新的短URL。完成此操作后,您需要映射长URL和短URL并将它们存储在数据库中,以允许用户将来使用它们。

短网址服务示例:

  • bitly.com
  • tinyurl

3. 文件重命名工具

如果您的工作要求您经常管理大量文件,那么使用文件重命名工具可以节省大量时间。它的主要作用是使用定义的初始标识符重命名数百个文件,该标识符可以在代码中定义,也可以向用户询问。

为此,您可以使用Python中的sys,shutil和os之类的库立即重命名文件。要实现向文件添加自定义初始标识符的选项,可以使用正则表达式库来匹配文件的命名模式。

工具示例:

  • Ren
  • Rename

4. 目录树生成器

目录树生成器是一种工具,可在需要可视化系统中所有目录并确定它们之间关系的情况下使用。目录树本质上指示的是哪个目录是父目录,哪些是其子目录。如果您使用大量目录,并且要分析其位置,则类似这样的工具将非常有用。要构建它,您可以使用os库列出文件和目录以及docopt框架。

目录树生成器示例:

  • tree
  • dirtreex

5. MP3播放器

如果您喜欢听音乐,您会惊讶地发现您可以使用Python构建音乐播放器。您可以使用图形界面构建mp3播放器,并带有一组用于播放的基本控件,甚至可以显示集成的媒体信息,例如艺术家,媒体长度,专辑名称等。

您还可以选择导航到文件夹并搜索音乐播放器的mp3文件。为了让在Python和媒体文件进行操作更容易,你可以使用simpleaudio,pymedia和pygame等库。

MP3播放器示例:

  • foobar
  • musicbee

6. 井字游戏

井字游戏是一款经典游戏,我们相信你们每个人都熟悉。这是一款简单有趣的游戏,仅需两名玩家即可。目标是在3x3网格上创建由三个X或O组成的不间断的水平,垂直或对角线,谁先做到谁就是游戏的赢家。这样的项目可以使用Python的pygame库,该库随附所有必需的图形和音频,以帮助您开始构建类似的内容。

您可以尝试以下一些教程:

  • https://techvidvan.com/tutorials/python-game-project-tic-tac-toe
  • 使用Python和Pygame制作游戏
  • 用Pygame开发游戏

7. 答题程序

您可以使用Python构建的另一个受欢迎且有趣的项目是答题应用。一个流行的例子是Kahoot,它以使学习成为学生的一项有趣活动而闻名。该应用程序提出了一系列带有多个选项的问题,并要求用户选择一个选项,随后,该应用程序将显示正确的选项。

作为开发人员,您还可以创建功能以添加任何所需的问题以及测验中要使用的答案。要创建答题应用程序,您需要使用数据库来存储所有问题,选项,正确答案和用户分数。

答题应用示例

  • kahoot
  • myQuiz

8. 计算器

当然,即使只是为了好玩,也没有人会在学习一种新的编程语言时就怀念开发计算器的古老想法。我们确定所有人都知道计算器是什么,并且如果您已经尝试过它,则可以尝试使用更好的GUI来增强它,使其更接近于当今操作系统随附的现代版本。为此,您可以使用tkinter包将GUI元素添加到项目中。

9. 创建虚拟助手

如今,几乎每个智能手机都带有自己的智能助手变体,该智能助手可以通过语音或文本从您那里接收命令,并管理您的通话,备忘,预订出租车等。Google Assistant,Alexa,Cortana和Siri就是其中的一些示例。如果你想知道如何创建这些应用,可以使用pyaudio, SpeechRecognition, gTTS和维基百科。这里的目标是记录音频,将音频转换为文本,处理命令,并使程序根据命令运行。

Udemy上有非常不错的课程作为参考:创建虚拟助手

10. 货币转换器

顾名思义,该项目包括构建一个货币转换器,该货币转换器允许您以基础货币输入所需的值,并以目标货币返回转换后的值。良好的做法是对从互联网获取更新的转化率的功能进行编码,以实现更准确的转化。同样,您也可以使用tkinter包来构建GUI。

更多有趣的Python项目构想

  • 用Django搭建一个简单的网页
  • 密码产生器
  • 推特机器人
  • 年龄和性别检测
  • 乳腺癌分类
  • 驾驶员睡意检测
  • 语音情感识别
  • 加密应用
  • 检测所有虚假新闻
  • 抄袭检查器
  • 文件浏览器
  • 闹钟
  • 实时价格提醒应用
  • 正则表达式查询工具
  • 费用追踪器
  • YouTube视频下载器

结论

上面是我们可以用Python构建的一些有趣的想法和项目。Python是一种非常有用的编程语言,可用于开发各种规模的应用程序。此外,Python提供的软件包在很大程度上简化了开发成本。总结一下,我们想说Python的潜力是无限的,而您唯一可能缺少的就是正确的想法。

本文来自于Medium,原文作者:Claire D. Costa,原文标题:10 Cool Python Project Ideas for Python Developers,翻译校对:蜂鸟数据

如果喜欢我们的文章,记得点赞和收藏哦,我们每天都会为大家带来Python,数据科学和量化交易的精品内容。

【关于我们】

蜂鸟数据:国内领先的金融数据API提供商。

蜂鸟数据团队由业界顶尖的数据工程师,数据科学家和宽客组成,我们正努力构建一个强大的金融数据库,并提供API接口,目标是令金融数据开源化和平民化。

浏览并测试我们接口吧,目前覆盖股票,外汇,商品期货,数字货币和宏观经济领域,包括实时报价(tick)和历史数据(分钟),提供REST API和Websocket两种接入方式,能够满足金融分析师,量化交易和理财app的需求。

需要金融数据?利用蜂鸟API将数据整合到您的应用

如果您准备好了,请登录蜂鸟官网,注册免费获取API密钥,然后开始探索我们的金融数据库吧。

针对Python开发人员的10个很棒的项目创意相关推荐

  1. python 创意项目_针对python开发人员的10个很棒的python项目创意

    python 创意项目 The joy of coding Python should be in seeing short, concise, readable classes that expre ...

  2. 适用于ios5的应用_适用于设计人员和开发人员的10个很棒的iOS应用

    适用于ios5的应用 Designers and developers rely heavily on the computer for their work. However, the work a ...

  3. 极客时间程序员的数学基础课_针对程序员和极客的10个很棒的礼物创意

    极客时间程序员的数学基础课 假期给程序员朋友和家人的一些礼物提示以及购买链接. 照片由freestocks.org在Unsplash上拍摄 大家好,又是一年中的某个时候,我们喜欢与家人和朋友共度时光, ...

  4. python开发中级_针对中级Python开发人员的13个项目构想

    python开发中级 Learning the basics of Python is a wonderful experience. But the euphoria of just learnin ...

  5. python玩加件大师_如何聘请Python开发人员并确定真正的大师

    python玩加件大师 "The joy of coding is in seeing a short, concise, readable, and small amount of cle ...

  6. 详解恶意软件 XcodeSpy 如何针对 iOS 开发人员展开供应链攻击

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 概述 威胁行动者滥用苹果 Xcode IDE 中的 Run Script 功能通过共享 Xcode 项目感染毫不知情的Apple 开发 ...

  7. 推荐给中高级Python开发人员的自然语言处理书

    随着NLP技术的发展,信息流和计算能力也不断增强.我们现在只需在搜索栏中输入几个字符,就可以检索出完成任务所需的准确信息.搜索提供的前几个自动补全选项通常非常合适,以至于让我们感觉是有一个人在帮助我们 ...

  8. 面向Python开发人员的综合置信区间全面理解

    面向Python开发人员的综合置信区间全面理解 置信区间是以范围表示并汇总统计中的不确定性的.换句话说,这是一系列我们确信自己真正价值所在的价值观.例如:我有95%的信心认为人口平均数在8.76到15 ...

  9. web前端angular_针对Web开发人员的十大Angular课程,教程和书籍

    web前端angular 大家好,如果您有兴趣学习Angular框架 (一种最流行JavaScript框架之一,用于开发基于组件的Web GUI并寻找一些很棒的资源,如课程,教程和书籍),那么您来对地 ...

最新文章

  1. jmeter测试工具
  2. NEFU84——五指山(Exgcd)
  3. python教程:可变长参数(*args、**kwargs)、返回值(return)
  4. 好代码是管出来的——.Net Core中的单元测试与代码覆盖率
  5. LeetCode 3. 无重复字符的最长子串(滑动窗口+哈希)
  6. 阿里发布《2015-2016中国云栖创新报告》,北上杭深广排名前5
  7. c语言教程苏小红,《数据结构(C语言)》苏小红 课本案例
  8. 因为项目的原因,要学习J2EE了
  9. IntelliJ IDEA上创建Maven Spring MVC项目
  10. 一文读懂矩阵的特征分解
  11. 云服务器安装 jdk
  12. linux设置伪静态地址,wordpress网站linux和win主机URL伪静态设置方法详解
  13. 仿真软件都在这里了!20+国内外自动驾驶仿真软件大盘点
  14. Centos 安装SVN
  15. 某大型软件公司售前软件工程师面试题附答案
  16. 计算机图形学直线算法论文,《计算机图形学》中直线生成算法的教学心得
  17. java hypot_Java StrictMath hypot()用法及代码示例
  18. GSM Sniffing入门之硬件篇
  19. 基于S-Function的Joystick Input
  20. Excel保护工作表了为什么就筛选不了了

热门文章

  1. openmv串口数据 串口助手_齐安安小课堂 | 串口数据抓取以及串口数据模拟
  2. flutter的引擎,Dart语言概括
  3. Axure RP 9 原型设计【交互】功能的使用,让你的原型变成高仿真的有灵魂的演示文档。
  4. 拉卡拉商户入网api接口接入方便数据
  5. Barycentric coordinate system(重心坐标系)
  6. SQL语句来查询今天、昨天、7天内、30天的数据
  7. CSDN 专栏的创建与管理
  8. android将一个long型转成时间字符串
  9. 鼠标手势软件MouseGesture v1.0.0.3中文绿色版.rar 相关下载
  10. 语音识别(Speech recognition)的核心内容是将语音转换成文字