原标题:Python的3大用途:Web开发、数据科学、脚本都是啥意思?

Python是一门脚本语言,因为能将其他各种编程语言写的模块粘接在一起,也被称作胶水语言。强大的包容性、强悍的功能和应用的广泛性使其受到越来越多的关注。一起来了解Python的用处:

一、网络爬虫

网络爬虫是Python比较常用的一个场景,国际上,google在早期大量地使用Python语言作为网络爬虫的基础,带动了整个Python语言的应用发展。以前国内很多人用采集器搜刮网上的内容,现在用Python收集网上的信息比以前容易很多了。

Python在这个方面有许多工具上的积累,无论是用于模拟HTTP请求的Requests、用于HTML DOM解析的PyQuery/BeautifulSoup、用于自动化分布式爬取任务的Scrapy,还是用于最简化数据库访问的各种ORM,都使得Python成为数据爬取的首选语言之一。特别是,爬取后的数据分析与计算是Python最为擅长的领域,非常容易整合。目前Python比较流行的网络爬虫框架是功能非常强大的scrapy。

二、数据科学

数据科学,这里包括机器学习,数据分析和数据可视化。

机器学习是什么?

假设你想开发一个能够自动检测图片内容的程序,给出图1,你希望程序识别这是一只狗。

图1

给出图2,希望程序能识别这是一张桌子。

图2

你可能会说,我可以写一些代码来做到这点。

例如,如果图片中有很多浅棕色像素,那么可以识别是狗。

或者可以检测图片中的边缘,如果有很多直的边缘,那么就是桌子。

但这种方法很快就不好用了。

如果图片中的狗不是棕色毛的怎么办?如果图片只显示桌子的圆形部分怎么办?

这里就需要用到机器学习了。

如果你开始遇到效率问题,那么可以使用TensorFlow。

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

进行数据可视化时,Matplotlib是非常热门的库。

Matplotlib很棒,因为:

容易上手

seaborn等库是基于它的,学习Matplotlib可以帮助你以后学习其他库。

如何用Python学习数据分析/可视化

你首先应该了解数据分析和可视化的基础知识,在学习了数据分析和可视化的基础知识之后,学习统计学基础知识也将会很有帮助。

三、Web开发

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

这些Web框架可以帮助你用Python编写服务器端代码(后端代码)。

这是在你的额服务器上运行的代码,而不是运行在用户设备和浏览器的代码(前端代码)。

为什么需要Web框架

应该使用哪种Python Web框架

Django和Flask是最流行的两种Python Web框架。

如果你刚刚入门,我建议使用其中一种。

Django和Flask有什么区别

Gareth Dwyer 关于这个问题有一篇出色的文章,在这里我引用几段:

主要区别:

如何选择?

Flask:如果你关注的是经验和学习的机会,或者你想更多地控制使用哪些组件,比如你想使用哪些数据库以及如何与其进行交互。

Django:如果你关注最终产品,或者你正在研究一个简单的应用,比如新闻网站、网店或博客,并且你希望有单一实现的方式。

四、脚本

什么是脚本?

当时我们使用了Ruby,但对于这类任务Python也是不错的选择。

Python适合这类任务,因为它语法简单,易于编写,而且进行测试也很快。

其他用途

嵌入式应用

我不是这方面的专家,但我知道Python可以与Rasberry Pi一起用,在硬件爱好者中很流行。

游戏开发

你可以用PyGame来开发游戏,但这并不是最受欢迎的游戏引擎。

你可以用它来开发业余爱好项目,但如果你对游戏开发很认真,建议不要选它。

我建议使用Unity的C#,这是最受欢迎的游戏引擎之一,它能让你为许多平台开发游戏,包括Mac、Windows、iOS和Android。

桌面应用

你可以用Python的Tkinter,但这并不是最热门的选择,Java,C#和C ++等语言似乎更受欢迎。

最近,一些公司也开始使用Java来开发桌面应用程序。

例如,Slack的桌面应用是Electron构建的,它能让你用Java构建桌面应用程序。

就个人而言,如果我要开发桌面应用,我会选择使用Java,它能让你重新使用网络版本的一些代码。

当然,我并不是桌面应用的专家,所以如果你有不同的看法,评论中告诉我。

Python 3还是Python 2

我会推荐Python 3,因为它更新而且更受欢迎。

后端代码与前端代码的区别

假设你想开发类似Instagram的产品,那么你需要为想要支持类型的设备创建前端代码。

你可能会用到:

面向iOS端的Swift

面向Android的Java

面向Web浏览器的Java

每组代码将在每种类型的设备上运行,这类代码将决定应用的布局样式,点击按键的样式等。

但是,您还需要存储用户信息和照片的功能。

你要将它们存储在服务器上,而不仅仅存储在用户的设备上,以便每个用户的关注者都可以查看其照片。

这时需要用到后端代码/服务器端代码。

你需要编写后端代码来执行以下操作:

记录关注情况

压缩照片,从而不占用太多存储空间

在发现功能中向每个用户推荐照片和新帐户

这是后端代码和前端代码之间的区别。

顺便说一下,Python不是编写后端代码的唯一选择,还有基于Java的Node.js等选择。

五、桌面程序

除此之外,Python也可以用于桌面软件开发(如sublime text等),甚至移动端开发(参看kivy)。Python简洁方便,各种工具包齐全的环境,能大幅度减少开发者的负担。著名的UI框架QT有Python语言的实现版本PyQT。Python简单易用的特性加上QT的优雅,可以很轻松的开发界面复杂的桌面程序,并且能轻松实现跨平台特性。

六、多媒体应用

可以用Python里面的PIL、Piddle、ReportLab 等模块对图象、声音、视频、动画等进行处理,还可以用Python生成动态图表和统计分析图表。另外,还可以利用PyOpenGl模块非常快速有效的编写出三维场景。

技能点又蹭蹭蹭up了有木有!

Python广泛强大的应用特性也是许多小伙伴选择学习Python的一大理由。

*版权声明:转载文章和图片均来自公开网络,版权归作者本人所有,推送文章除非无法确认,都会注明作者和来源。如出处有误或侵犯到原作者权益,请与我们联系删除或授权事宜,感谢原作者。

责任编辑:

python的脚本是什么意思_Python的3大用途:Web开发、数据科学、脚本都是啥意思?...相关推荐

  1. python读数据库的通信协议是_Python以太坊区块链交互将数据存入数据库

    关于区块链介绍性的研讨会通常以易于理解的点对点网络和银行分类账这类故事开头,然后直接跳到编写智能合约,这显得非常突兀.因此,想象自己走进丛林,想象以太坊区块链是一个你即将研究的奇怪生物.今天我们将观察 ...

  2. python数据录入系统数据库处理导出_Python以太坊区块链交互将数据存入数据库

    关于区块链介绍性的研讨会通常以易于理解的点对点网络和银行分类账这类故事开头,然后直接跳到编写智能合约,这显得非常突兀.因此,想象自己走进丛林,想象以太坊区块链是一个你即将研究的奇怪生物.今天我们将观察 ...

  3. python数据展示平台_Python获取各大地图平台经纬度数据,哪家的数据最准确?

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于菜J学Python ,作者J哥 前言 不知道大家会在什么场合使用地图 ...

  4. python装饰器作用和功能_python装饰器大详解

    一.作用域 在python中,作用域分为两种:全局作用域和局部作用域. 全局作用域是定义在文件级别的变量,函数名.而局部作用域,则是定义函数内部. 关于作用域,我们要理解两点: a.在全局不能访问到局 ...

  5. python分割文件为小文件_Python实现将一个大文件按段落分隔为多个小文件的简单操作方法...

    本文实例讲述了Python实现将一个大文件按段落分隔为多个小文件的简单操作方法.分享给大家供大家参考,具体如下: 今天帮同学处理一点语料.语料文件有点大,并且是以连续两个换行符作为段落标志,他想把它按 ...

  6. python获取地图上经纬度_Python获取各大地图平台经纬度数据,哪家的数据最准确?...

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于菜J学Python ,作者J哥 前言 不知道大家会在什么场合使用地图 ...

  7. python爬取虎扑评论_Python爬取NBA虎扑球员数据

    虎扑是一个认真而有趣的社区,每天有众多JRs在虎扑分享自己对篮球.足球.游戏电竞.运动装备.影视.汽车.数码.情感等一切人和事的见解,热闹.真实.有温度. 受害者地址 https://nba.hupu ...

  8. python爬取历史天气查询_Python爬虫实战-爬取历史天气数据

    最近项目需要对合肥市历史天气数据进行爬取,分析了几个天气数据网站,最终选择天气后报网站. 将实现过程遇到的问题以及下来,供以后参考. 步骤分析 这里我使用的是Python中的requests库Beau ...

  9. 关于python数据的纬度_Python获取各大地图平台经纬度数据,哪家的数据最准确?...

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于菜J学Python ,作者J哥 前言 不知道大家会在什么场合使用地图 ...

最新文章

  1. mysql字段默认值不生效的问题解决(上)
  2. bond-vlan-bridge
  3. php wget,Linux_Linux下载工具wget和axel简介,Wget Wget是一个十分常用命令 - phpStudy
  4. 2017第八届蓝桥杯C/C++ B组省赛 —— 第一题:购物单
  5. 认识微服务-SpringCloud
  6. telegram 机器人_学习使用Python在Telegram中构建您的第一个机器人
  7. Apollo进阶课程㊶丨Apollo实战——本机演示实战
  8. python 日志不会按照日期分割_django实现日志按日期分割
  9. BASH 比较运算小结[转载 小蜗牛五二]
  10. Excel-DNA开发包:ExcelDna-0.34.6.zip下载
  11. 虹科教您固定工业树莓派Modbus RTU设备编号
  12. c++ cv转化灰度图_OpenCV C++如何使RGB图像变为灰度图像
  13. 论劳动生产力进步的原因,兼论劳动产品在不同阶级人民之间自然分配顺序(读后感)
  14. 修复常见ACPI问题(DSDT等)
  15. android手机最低内存,安卓想用很久不卡顿?12GB内存是最低标准,这6款硬核配置还便宜...
  16. 怎么查忘仙服务器信息,忘仙怎么跨服战斗 跨服玩法介绍[多图]
  17. 深度报告 | RGP2019年度中国RPA市场调研:厂商、机遇、规模、上升空间、市场反馈......
  18. Linux内核块设备总结(一)
  19. 年后创业,该如何选择适合年轻人的小成本创业项目?
  20. Aut(S3)=Inn(S3)的证明和元素寻找

热门文章

  1. Part 14  PhilClaire
  2. Python中Gradient Boosting Machine(GBM)调参方法详解
  3. 腾讯 TLC 大会半折票最后 1 天!!!
  4. erc20钱包下载_以太坊ERC20代币数据集【1000+】
  5. 创建一个3D角色模型很难?3dmax和maya低模手绘角色制作步骤
  6. 区块链和物联网强强联合,推动智能设备连接发展
  7. 现代APaaS产品的5C特点
  8. 安卓已死?这些年Android面试的那些套路,实战解析
  9. CE使用指南之扫雷棋盘扫描
  10. Towards Semi-Supervised Deep Facial Expression Recognition with An Adaptive Confidence Margin 论文笔记