笔记
专栏收录该内容
2 篇文章0 订阅
订阅专栏
Python,是一种广泛使用的高级编程语言。相比于C++和JAVA,Python都能让程序的结构更加清晰明了。作为一种解释性语言,Python的设计强调代码的可读性和简洁的语法。
1
1.1.1 Python的历史
1989年的圣诞节期间,吉多●范罗苏姆(Guido van Rossum)为了阿姆斯特丹打发时间,决定开发一个新的脚本解释语言,作为ABC语言的后裔。
那个年代流行的是Pascal、C、Fortran等编程语言,设计这些语言的初衷就是为了让机器运行的更快。而为了增进效率,语言也迫使程序员像计算机一样思考,以便于写出符合计算机口味的程序。吉多知道如何使用C语言写出自己想要的功能,但是整个编写过程很繁琐,需要耗费大量的时间,他对这种编程方式感到苦恼。那时候Unix的管理员用Shell去编写一些简单的脚本以进行一些重复的系统维护工作,比如数据备份、用户管理等。Shell可以只使用几行就实现许多C语言下上百行的程序,然而Shell只是调用命令,并不能调用计算机的所有功能。
吉多希望有一种编程语言能实现像C语言那样全面调用计算机的功能接口,同时又可以像Shell那样轻松编程。当时他在荷兰国家数学与计算机科学研究中心工作,并参与ABC语言的开发。开发ABC语言的目的是教导非专业的程序员学习如何开始写程序,ABC语言希望让语言变得容易阅读、容易使用、容易记忆、容易学习,并以此来激发人们学习编程的兴趣。
在吉多本人看来,ABC语言非常优雅和强大,并且还是专门为了非专业程序员而设计的。但是ABC语言的设计还存在一些致命的问题,比如可扩展性差,不能直接操作文件系统等。最终ABC语言并没有成功,究其原因,吉多认为这种语言的非开放性造成的。他决心在Python中避免这种错误,并在后来获得了非常好的效果。
1991年,Python的第一个版本在吉多的Mac机上诞生了。它是用C语言实现的,并且能够调用C语言的库文件,完美结合了C语言和Shell的特点。
Python 2.0于2000年10月16日发布,实现了完整的垃圾回收功能,并且支持Unicode。同时,整个开发过程更加透明,社区对开发进度的影响逐渐扩大。
Python 3.0于2008年12月3日发布,此版本不完全兼容之前的Python源代码。不过,很多新特性后来也被移植到旧的Python 2.6和2.7版本中。
在Python解释器内运行“import this”就会看到这段“Python格言”。Python开发者的设计哲学
是“用一种方法,最好是只有一种方法来做一件事”。在设计Python语言时,如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确的、没有或者很少有歧义的语法。由于这种设计观念的差异,Python源代码通常具备更好的可读性,并且能够支撑大规模的软件开发。
Python能做什么?
1.网站后台
Python有大量成熟的Web框架,如Django、Flask、Bottle、Tornado等。
2.网络爬虫
知名的Serapy爬虫框架就是用Python实现的,只需要几行代码就能实现一个复杂的爬虫
项目。
3.科学计算
Python有像NumPy、Pandas这样的科学计算库,完全可以代替R语言和MATLAB。
4.机器学习
通用机器学习可以使用sklearn,深度学习有谷歌的TensorFlow和脸书的PyTorch,这些都是业界最流行的Python机器学习框架。就连著名的阿尔法围棋(AlphaGo)也是使用Python编写的。
【1.1 Python编程语言概述】5.大数据
Spark和Hadoop都开发了Python的接口,所以用Python处理大数据非常方便。
6.系统运维
流行的Linux操作系统无论是Ubuntu还是CentOS都预装Python,方便系统维护人员使用。
推荐阅读
- 推荐系统论文进阶|CTR预估 论文精读(十一)--Deep Interest Evolution Network(DIEN)
- Python专栏|数据分析的常规流程
- Python|Win10下 Python开发环境搭建(PyCharm + Anaconda) && 环境变量配置 && 常用工具安装配置
- Python绘制小红花
- Pytorch学习|sklearn-SVM 模型保存、交叉验证与网格搜索
- OpenCV|OpenCV-Python实战(18)——深度学习简介与入门示例
- python|8. 文件系统——文件的删除、移动、复制过程以及链接文件
- 爬虫|若想拿下爬虫大单,怎能不会逆向爬虫,价值过万的逆向爬虫教程限时分享
- 分布式|《Python3网络爬虫开发实战(第二版)》内容介绍
- java|微软认真聆听了开源 .NET 开发社区的炮轰( 通过CLI 支持 Hot Reload 功能)