前言

如果您正在考虑学习Python—或者您最近才开始学习—您可能会问自己:

“我用Python到底能做什么?”

这个问题很难回答,因为Python有很多应用程序。

但随着时间的推移,我发现Python有3种主要的流行应用:

  1. Web开发
  2. 数据科学——包括机器学习、数据分析和数据可视化
  3. 脚本

web开发

基于Python(如Django和Flask)的Web框架最近在Web开发中非常流行。

这些web框架帮助您用Python创建服务器端代码(后端代码)。这是运行在服务器上的代码,而不是用户设备和浏览器上的代码(前端代码)。如果您不熟悉后端代码和前端代码的区别,请参阅我下面的脚注。

但是等等,为什么我需要一个web框架呢?

这是因为web框架更容易构建通用后端逻辑。这包括将不同的url映射到Python代码块、处理数据库和生成用户在浏览器上看到的HTML文件。

我应该使用哪种Python web框架?

Django和Flask是两个最流行的Python web框架。如果你刚刚开始,我建议你使用其中的一种。

Django和Flask有什么不同?

主要对比:

  • Flask提供了简单、灵活和细粒度的控制。它是无约束的(它让您决定如何实现事物)。
  • Django提供了一种全面的体验:为您的应用程序和项目提供了一个管理面板、数据库接口、ORM[对象-关系映射]和目录结构。

你应该选择:

  • 如果您关注经验和学习机会,或者您想要更多地控制使用哪些组件(例如您想要使用哪些数据库以及您想要如何与它们交互),那么您可以使用Flask。
  • Django,如果你专注于最终的产品。特别是如果您正在处理一个简单的应用程序,例如一个新闻站点、一个电子商店或博客,并且您希望总是有一个单一的、明显的做事方式。

换句话说,如果您是初学者,那么Flask可能是一个更好的选择,因为它需要处理的组件比较少。此外,如果您想要更多的定制,Flask是一个更好的选择。

另一方面,如果您希望直接构建一些东西,Django可能会让您更快地实现这一点。

数据科学

首先,让我们复习一下什么是机器学习

我认为解释机器学习的最好方法是给你们举个简单的例子。

假设您想要开发一个程序来自动检测图片中的内容。

因此,根据下面这张图(图1),您希望您的程序能够识别它是一只狗。

考虑到下面的另一个(图2),您希望您的程序认识到它是一个桌子。

你可能会说,我可以写一些代码来实现。例如,如果图片中有很多浅棕色的像素,那么我们可以说它是一只狗。或者,你可以找出如何检测图片的边缘。然后,你可能会说,如果有很多条直边,那么它就是一个表格。

然而,这种方法很快就会变得棘手。如果照片里有一只没有棕色毛发的白狗呢?如果这张图只显示了桌子的圆形部分呢?

什么是机器学习。

机器学习通常实现自动检测给定输入中的模式的算法。

比如说,你可以给一个机器学习算法提供1000张狗的图片和1000张桌子的图片。然后,它会学习狗和桌子之间的区别。当你给它一张狗或桌子的新图片时,它就能认出这是哪一张。

我认为这有点类似于婴儿学习新事物的方式。一个婴儿怎么知道一个东西长得像狗,而另一个东西长得像桌子?可能是从一堆例子中得到的。

你可能不会明确地告诉婴儿,“如果什么东西是毛茸茸的,长着浅棕色的毛,那么它可能是一只狗。”你可能会说:“那是一只狗。”这也是一只狗。这是一张桌子。那张也是桌子。”

机器学习算法也是如此。你可以把同样的想法应用到:

  • 推荐系统(想想YouTube、Amazon和Netflix)
  • 人脸识别
  • 语音识别

在其他应用程序中。你可能听说过的流行的机器学习算法包括:

  • 神经网络
  • 深度学习
  • 支持向量机
  • 随机森林

您可以使用上面的任何一种算法来解决我前面解释的图片标记问题。

机器学习中的Python

Python有很多流行的机器学习库和框架。其中最受欢迎的两个是scikit-learn和TensorFlow。

  • scikit-learn内置了一些更流行的机器学习算法。我上面提到了其中的一些。
  • TensorFlow更像是一个底层库,它允许您构建自定义机器学习算法。

如果你刚刚开始一个机器学习项目,我建议你先从scikit-learn开始。如果你开始遇到效率问题,那么我将开始研究TensorFlow。

我应该如何学习机器学习?

为了学习机器学习的基础知识,我推荐斯坦福吴恩达的机器学习课程。

https://www.coursera.org/learn/machine-learning

请注意,你需要微积分和线性代数的基础知识来理解这些课程中的一些材料。

然后,在Kaggle实践您从这些课程中学到的内容。这是一个网站,人们在这里竞争,为一个给定的问题建立最好的机器学习算法。他们也有很好的初学者教程。

使用Python进行数据分析/可视化

用于数据可视化的最流行的库之一是Matplotlib。这是一个很好的入门库,因为:这很容易开始

一些其他的库,比如seaborn就是基于它的。因此,学Matplotlib将帮助您以后学习这些其他库。

脚本

脚本是什么?

脚本编制通常是指编写用于使简单任务自动化的小程序。

那么,让我给你们一个我个人经历的例子。

我曾经在日本的一家小公司工作,那里有一个电子邮件支持系统。这是一个我们用来回复客户通过电子邮件发送给我们的问题的系统。

当我在那里工作的时候,我的任务是计算包含特定关键词的电子邮件的数量,这样我们就可以分析收到的电子邮件。我们可以手动完成它,但是我写了一个简单的程序/简单的脚本来自动化这个任务。

实际上,我们当时使用的是Ruby,但是Python也是完成这种任务的好语言。Python适合这种类型的任务,主要是因为它有相对简单的语法和易于编写。它还可以快速地用它编写一些小的东西并对其进行测试。

游戏呢?

你可以使用PyGame库来开发游戏,但它并不是最流行的游戏引擎。你可以用它来建立一个兴趣项目,但我个人不会选择它,如果你是认真的游戏开发。

相反,我建议您从Unity开始使用c#,它是最流行的游戏引擎之一。它允许你在许多平台上创建游戏,包括Mac, Windows, iOS和Android。

最后

如果对Python感兴趣的话,可以试试我的学习方法以及相关的学习资料

Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、Python必备开发工具

三、精品Python学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

四、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

六、Python练习题

检查学习结果。

七、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

大家拿到脑图后,根据脑图对应的学习路线,做好学习计划制定。根据学习计划的路线来逐步学习,正常情况下2个月以内,再结合文章中资料,就能够很好地掌握Python并实现一些实践功能。

使用Python究竟可以做什么?下面是Python的3个主要应用相关推荐

  1. python是干什么用的-使用Python究竟可以做什么?下面是Python的3个主要应用

    原文传送门: https://medium.com/free-code-camp/what-can-you-do-with-python-the-3-main-applications-518db9a ...

  2. Python识别表格图_使用Python究竟可以做什么?下面是Python的3个主要应用

    原文传送门: https://medium.com/free-code-camp/what-can-you-do-with-python-the-3-main-applications-518db9a ...

  3. 学python可以做什么职业-学完python都能做哪些职业?老男孩Python基础培训

    在it行业中,编程语言有很多种,而python可以说是其中最受欢迎的一种,简单易学.入门快,也成为了不少编程爱好者的首选语言.不过对于刚刚接触的编程的人来说,在学习python的时候都会疑惑,pyth ...

  4. python可以帮助做excel-超简单:用Python让Excel飞起

    本书对于编程知识零基础的办公人士特别友好,其摒弃了晦涩的理论讲解,引入了实用的办公场景,为办公人士开辟了一条学习办公自动化的新路.本书精选典型办公案例以及通俗易懂的讲解,有助于办公人士掌握Python ...

  5. 运维用python可以来做什么_学习Python一般可以用来干什么?

    很多人对于Python都是非常了解的,也知道Python是一门非常不错的编程语言,拥有很多功能和作用,因此不少人都非常疑惑,Python可以用来做什么?为大家介绍一下. 一般情况下来说,Python可 ...

  6. python拿什么做可视化界面好-python爬虫如何制作可视化界面?(pyqt5环境配置篇)...

    却道天凉好个秋~ pyqt5+python+qtdesigner+pycharm制作一个可视化的GUI爬虫工具 前言: 最近闲来无聊又开始了py之路,这次需要的是制作一个贴吧的关键词搜索相关帖子的工具 ...

  7. python与excel做数据可视化-用Python进行数据可视化的10种方法

    原标题:用Python进行数据可视化的10种方法 2015-11-19 关于转载授权 大数据文摘作品,欢迎个人转发朋友圈,自媒体.媒体.机构转载务必申请授权,后台留言"机构名称+转载&quo ...

  8. python socket能做什么_用python写一个聊天小程序!和女朋友的专属聊天工具!

    原标题:用python写一个聊天小程序!和女朋友的专属聊天工具! 1.UDP简介 Internet协议集支持一个无连接的传输协议,该协议称为用户数据报协议(UDP).UDP为应用程序提供了无需建立就可 ...

  9. python最适合做什么-总算明了python适合做什么

    在学习完Python的基础知识之后,有很多朋友为自己接下来要干什么感到迷茫.不知道应该通过什么样的项目来锻炼自己编程水平和思维能力.接下来我就给大家说几个适合Python的新手项目和练手项目,Pyth ...

最新文章

  1. Storm Trident示例function, filter, projection
  2. 转载:薪资谈判应该避免的7个错误
  3. 求连通块个数(使用并查集)
  4. 分布式系统开发——调度技术
  5. BAT 才不关心币价,19年的5大重点在这里!
  6. 出产报表数据库呈现了运动事项的回滚段毁坏(二)
  7. 数字图像处理--几种图像均值滤波的java实现
  8. 记录一段让我吐血的代码
  9. [GraphQL] Create a GraphQL Schema
  10. codeforces 919E Congruence Equation
  11. port wifi to ICS(4.0.3)
  12. 【CodeForces - 155C】Hometask (字符串,思维,贪心,熟悉句式)(总结)
  13. BZOJ2388: 旅行规划
  14. layui跨域问题的解决
  15. Android反编译与加密(代码混淆)
  16. 快捷指令获取url内容_快捷指令,钢铁侠里的“贾维斯”
  17. python+opencv+百度智能云 人脸识别——人脸相似度对比
  18. 史玉柱和郭广昌谈创业团队管理:两种类型的“孔雀王”
  19. ZeroMQ 中文指南 第一章 ZeroMQ基础【转载】
  20. flex布局控制每行显示几个且有间隔

热门文章

  1. oracle数据库定时每天自动备份语句,Oracle数据库定时自动备份
  2. mathType字体对应word字体
  3. 基于消元法的C++多项式拟合
  4. 2018年外链发布平台
  5. 2022年度PANTONE流行色发布
  6. Android-Studio与Python环境配置
  7. WBSC 世界棒垒球总会·美洲
  8. Android APP连接电脑数据库(以SQL Server为例)
  9. Node — Koa2
  10. 学计算机买笔记本r5还是i5,电脑处理器r5和i5哪个好