前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >除了AI,你不该忽视Python这4大领域的应用!

除了AI,你不该忽视Python这4大领域的应用!

作者头像
一墨编程学习
发布2018-12-24 11:13:59
8670
发布2018-12-24 11:13:59
举报

借着人工智能的东风,Python在这两年逐渐火了起来,Python在编程语言排行中的不断攀升,不得不说有着人工智能的很大功劳。凭借Python简洁易于上手的语法和丰富的扩展,Python在人工领域的应用越来越广泛。

仿佛学了Python就会人工智能,又仿佛要学习人工智能就必须学习Python。

诚然,Python各种第三方机器学习、神经网络模块的诞生大大降低了对机器学习算法、模型的建构、训练和测试的难度。使得普通人通过简单地调用模块的API就能够实现可进行预测的某某神经网络。

但是Python不只是为了人工智能而生,人工智能也不只是Python的专属。

Python从上个世纪90年代诞生至今,从玩具语言,到万能语言。它所能带给我们的,不仅仅是人工智能的风口热点,作为一门胶水语言,其在其他领域的发展和应用也十分显著和高效,其中一些方面还能够与人工智能紧密地结合在一起。也值得我们去运用和了解。

如果仅仅局限Python在人工智能领域的应用,未免浪费了Python大好的生态环境。下面一起来了解一下,Python在其他4大领域的应用。

网络爬虫——大数据时代,没有数据怎么行?

都说现在是大数据时代了,大数据,大数据,没有海量的数据怎么能够称之为大数据。

大数据的来源大概有这么几种:

● 企业内部原始积累数据。

经过长年累月的业务沉淀,企业内部的数据库中积累的海量的数据可供应用;

● 外部采集数据

外部采集数据,通过各种软件(八爪鱼、火车头等采集器)直接进行数据采集,或者使用各种编程语言编写网络爬虫进行数据采集。

说到使用编程语言编写网络爬虫,就不得不提到Python的简便、高效和、强大了。在几年之前,大多数网络爬虫还是使用java进行编写的,但是随着Python生态的不断壮大,其简洁的语法搭配强大的功能,使得Python在编写网络爬虫有着得天独厚的优势。

从HTTP请求,到页面数据解析,到数据存储,甚至于其间的模拟登陆,验证码识别,代理IP使用,并发请求都能够很好的进行处理。

Web开发——让世界看到你的作品

虽说在Web开发领域,PHP占了大头,世界上绝大多数的网站都是使用PHP开发的,但是这也丝毫掩盖不了Python在Web开发领域的光彩。

在Python中进行Web开发,主要依赖于各个Web开发框架,流行的有:

● 功能强大,采用MTV架构的Django框架; ● 轻量简洁的Flask; ● 性能超群的tornado;

使用这些框架可以快速地根据自己的需求开发出一个合格的Web应用。小到个人博客,大到商品化的产品,Python中的Web框架都能够胜任。

,相较于其他的Python Web框架,Django有几个显著的特点吸引了我:

● 功能全面,不需要安装其他的第三方模块进行基础功能的应用; ● 顺手的ORM,数据模型异常的强大和好用; ● 强大的后台系统,自带强大的后台管理系统,一些不复杂的后台管理都可以通过它来实现; ……

使用Django框架进行开发的Web应用中比较出名的有Instagram,一个国外的移动端照片视频分享应用。其使用Django作为应用后端服务,支撑了7亿的月活用户。

数据分析——看到数据的背后的真相

数据分析也是随着大数据的概念再次兴起的一个领域。有了大量的数据,自然需要对其进行数据清理、数据提取和数据分析。

在科学计算和数据分析领域,Python一直没有缺席。在这些方面都有非常成熟的第三方模块和活跃的社区,使python成为数据处理任务的一个重要解决方案。

NumPy和Pandas等模块,为数据处理提供了非常大的便利。

matplotlib、pyecharts等模块也是非常优秀的数据可视化模块。

Jupyter Notebook模块则为数据分析人员提供了一种全新的数据分析流。

很多人通过Python编写爬虫采集数据(影评、歌评,各种评)之后,直接就可以继续使用Python的pandas模块分析采集下来的数据,并用诸多数据可视化模块生成漂亮的报表和图表。

GUI开发——向更多人分享你的编程成果

如果代码永远都只是停留在代码层面,那么其能够实现的功能永远都不方便传播和供大多数人使用,所以将其通过桌面程序包装出来,就很有必要。

比如我们使用Python写了一个自动签到小程序,写了一个特定网站的采集程序,嗯,觉得很好用,想分享给同事、同学或者其他小伙伴。如何包装这个程序,给他们都能使用呢,最好的做法还是编写打包出GUI的图形用户界面桌面程序,直接将打包好的程序文件发送过去。既方便编写者传播,也方便使用者使用。

Python在编写GUI程序方面,有多种选择,都能够实现不错的功能。其中:

● Tkinter,是Python的内置模块,无需安装第三方的模块,就可以使用,实现编写一些简单,交互不复杂的GUI程序。 ● PyQt5/PySide2:,Qt的Python封装包,功能强大,可编写复杂的GUI程序。 ● WxPython,是wxWidgets的Python封装包,与PyQt5类似。 ● Kivy,新兴的跨平台GUI开发模块,支持移动端的GUI开发。

最后

上面介绍了4个在日常使用Python中经常会涉及到的一些领域的应用。其实除此之外,还有很多领域都有Python的身影,比如网络安全,渗透测试,自动化运维,等等

Python是一门胶水语言,这是它的劣势,同时也是它的优势,通过各种扩展,Python能够实现绝大多数领域的应用。其作为一门通用性的编程语言,适合衔接不同的领域,实现所谓的All in Python

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.12.03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云 BI
腾讯云 BI(Business Intelligence,BI)提供从数据源接入、数据建模到数据可视化分析全流程的BI能力,帮助经营者快速获取决策数据依据。系统采用敏捷自助式设计,使用者仅需通过简单拖拽即可完成原本复杂的报表开发过程,并支持报表的分享、推送等企业协作场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档