Python语言概述

来自CloudWiki
跳转至: 导航搜索

Python是这样一种语言

  • Python是一门跨平台、开源、免费的解释型高级动态编程语言。
  • Python支持命令式编程(How to do)、函数式编程(What to do),完全支持面向对象程序设计,拥有大量扩展库。
  • 胶水语言:可以把多种不同语言编写的程序融合到一起实现无缝拼接,更好地发挥不同语言和工具的优势,满足不同应用领域的需求。

Python的诞生

  • Python的创始人吉多·范罗苏姆(Guido van Rossum),在1989年12月的圣诞节期间,为了打发时间,决定开发一种新的脚本解释程序,作为ABC语言的继承。1991年正式发布。
  • P1-106.jpg
  • 现在,python以其优美,清晰,简单的特性在全世界广泛流行,成为最主流的编程语言之一。
  • 近日,TIOBE公布了2022年5月的编程语言排行榜,其中前10名与上个月相比没有任何变化,而且丝毫不出所料,Python仍是第1名!自从去年10月登顶月度榜首之后,已牢牢占据该位置达8个月之久,而且市场占有率继续稳步提升。在Python之后,排第2名的是C语言,第3名是Java,第4名是C++,第5名是C#。

https://www.bilibili.com/read/cv16526153 出处:bilibili

  • P1-5.png

Python的优点

1.易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。

2.易于阅读:Python代码定义的更清晰。

3.易于维护:Python的成功在于它的源代码是相当容易维护的。

4.一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。

5.互动模式:互动模式的支持,您可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断。

6.可移植:基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台。

7.可扩展:如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用。

8.数据库:Python提供所有主要的商业数据库的接口。

9.GUI编程:Python支持GUI可以创建和移植到许多系统调用。

10.可嵌入: 你可以将Python嵌入到C/C++程序,让你的程序的用户获得"脚本化"的能力。

Python的应用

  • Python被广泛应用于众多领域,例如:

云计算

  • 典型应用——Python开发的OpenStack

O1-112.jpg

  • 系统运维: 运维人员必备,slatstack(系统自动化配置和管理工具),Ansible(自动化运维工具)

拓展:云计算核心课程 Python自动化运维

大数据

  • 网络爬虫: 什么是爬虫?网络爬虫又被称为网页蜘蛛,是一种按照一定的规则,自动抓取万维网信息的程序或者脚本。百度、搜狗等搜索引擎,依靠巨大的爬虫集群每天抓取数百亿网页。

Python1-12.png

目前爬虫被广泛用于互联网金融、电商、社交等领域;在机票领域,爬虫可以抓取机票价格,发现超值机票后,爬虫还可以模拟真人用户抢先预订。

携程的反爬虫专家在技术分享中举例:某网站的一个页面,每分钟的浏览量是1.2万,真实用户只有500个,爬虫流量比例是95.8%。业内人士表示,爬虫所带来的虚假流量占订票网站总流量的50%,高峰期可达到90%以上。

  • 科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas。
  • 数据分析: 2016/2月/11,美国科学家宣布发现引力波,分析观测30年的数据。分析引力波数据的Python包:GWPY

案例:初识Python爬虫

Web开发

  • WEB开发: 众多优秀的WEB框架,Django、flask、 tornado,国内网站如知乎、豆瓣

Python1-11.png

人工智能

Ai4-7.png

NASA和Google早期大量使用Python,为Python积累了丰富的科学运算库,当AI时代来临后,Python从众多编程语言中脱颖而出,各种人工智能算法都基于Python编写,尤其PyTorch之后,Python作为AI时代头牌语言的位置基本确定。

其他

  • 图形开发: wxPython、PyQT、TKinter

Python1-13.png

  • 在网络游戏开发中,Python也有很多应用,相比于Lua or C++,Python比Lua有更高阶的抽象能力,可以用更少的代码描述游戏业务逻辑,Python非常适合编写1万行以上的项目,而且能够很好的把网游项目的规模控制在10万行代码以内。
  • 并且越来越多的公司选在python作为其主要开发语言,例如:
  • Google - Google Groups、Gmail、Google Maps、AlphaGo等,Google App Engine支持python作为开发语言
  • NASA - 美国宇航局,从1994年起把python作为主要开发语言
  • Dropbox - 美国最大的在线云存储网站,全部用Python实现,每天网站处理10亿个文件的上传和下载
  • 豆瓣网 - 图书、唱片、电影等文化产品的资料数据库网站
  • BitTorrent - bt下载软件客户端
  • gedit - Linux平台的文本编辑器
  • GIMP - Linux平台的图像处理软件(Linux下的PS)
  • 知乎(国外的Quora) - 社交问答网站,国内最大的问答社区,通过Python开发
  • Autodesk Maya - 3D建模软件,支持python作为脚本语言
  • YouTube:世界上最大的视频网站YouTube就是用Python开发的
  • Facebook:大量的基础库均通过Python实现的
  • Redhat: 世界上最流行的Linux发行版本中的yum包管理工具就是用python开发的
  • 除上面之外,还有搜狐、金山、腾讯、盛大、网易、百度、阿里、淘宝 、土豆、新浪、果壳等公司都在使用Python完成各种各样的任务。
  • 更多案例:https://www.python.org/about/success/

Python的就业方向

发展前景一:Linux运维

发展前景二:Python Web网站工程师

发展前景三:Python自动化测试

发展前景四:数据分析

发展前景五:人工智能

参考文档:https://baijiahao.baidu.com/s?id=1604847283884842928&wfr=spider&for=pc