金丹期前期:1.1、python语言-认识python

一、Python语言的诞生及其原生特性

1.python的编译器

  1991年,第一个Python编译器诞生。它是用C语言实现的,并能够调用C语言的库文件。

2.Python原生包含内容

从一出生,Python已经具有了 :

  • 核心数据类型,包含表和词典
  • 函数
  • 异常处理
  • 以模块为基础的拓展系统

3.python语言的扩展

 Python特别在意可拓展性,Python就好像是使用钢构建房一样,先规定好大的框架。而程序员可以在此框架下相当自由的拓展或更改。

  • 高层上,可以直接引入. py文件,Python程序员可以快速的使用. py文件作为拓展模块。
  • 底层上,可以直接引用C语言的库。一般当性能是考虑的重要因素时,写C程序,编译为.so文件引入到Python程序中使用。

4.python作为高级语言的特性

  • 将许多机器层面上的细节隐藏,交给编译器处理,并凸显出逻辑层面的编程思考。使使用python的程序员花更多的时间用于思考程序的逻辑,而不是具体的实现细节.

  • 提供了面向对象的编程范式,以及丰富的对象库。在牺牲了一定的性能的代价下,大大提高了程序的产量,语言的易用性被提到一个新的高度.

  • 开源,开放,程序员利用 业余时间进行软件开发,并开放源代码,Python标准库中的正则表达是参考Perl,而lambda, map, filter, reduce等函数参考了Lisp。Python本身的一些功能以及大部分的标准库来自于社区.

  • 到今天,Python的框架已经确立。Python语言以对象为核心组织代码,支持多种编程范式,采用动态类型,自动进行内存回收。Python支持解释运行,并能调用C库进行拓展。Python有强大的标准库。由于标准库的体系已经稳定,所以Python的生态系统开始拓展到第三方包。这些包,如Django、web.py、wxpython、numpy、matplotlib、PIL,将Python升级成了物种丰富的热带雨林.

 5.python的常识

  • Python的发音与拼写
  • Python的意思是蟒蛇,源于作者喜欢的一部电视剧 (C呢?)
  • Python的作者是Guido van Rossum(龟叔)
  • Python是龟叔在1989年圣诞节期间,为了打发无聊的圣诞节而用C编写的一个编程语言
  • Python正式诞生于1991年
  • Python的解释器如今有多个语言实现,我们常用的是CPython(官方版本的C语言实现),其他还有Jython(可以运行在Java平台)、IronPython(可以运行在.NET和Mono平台)、PyPy(Python实现的,支持JIT即时编译)
  • Python目前有两个版本,Python2和Python3,最新版分别为2.7.12和3.5.2,现阶段大部分公司用的是Python2
  • Life is shot, you need Python. 人生苦短,我用Python。

二、Python的优缺点

1. 优点:

  • 简单,易学,免费,开源

  • 可移植性:所有Python程序无需修改就可以在下述任何平台上面运行。这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE以及Google基于linux开发的Android平台!

  • 解释性语言: 

编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。当你运行你的程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。

解释性语言比如Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行程序。在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于你不再需要担心如何编译程序,如何确保连接转载正确的库等等,所有这一切使得使用Python更加简单。由于你只需要把你的Python程序拷贝到另外一台计算机上,它就可以工作了,这也使得你的Python程序更加易于移植。

  • 既支持面向过程的编程也支持面向对象的编程

面向过程语言,在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。

面向对象语言,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如C++和Java相比,Python以一种非常强大又简单的方式实现面向对象编程。

  • 可扩展性  如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。

  • 丰富的库  Python标准库确实很庞大。它可以帮助你处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。记住,只要安装了Python,所有这些功能都是可用的。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。

2. 缺点

  • 运行速度慢,有速度要求的话,用C++改写关键部分吧。
  • 国内市场较小(国内以python来做主要开发的,目前只有一些web2.0公司)。但时间推移,目前很多国内软件公司,尤其是游戏公司,也开始规模使用他。
  • 中文资料匮乏(好的python中文资料屈指可数)。托社区的福,有几本优秀的教材已经被翻译了,但入门级教材多,高级内容还是只能看英语版。
  • 构架选择太多 不过这也从另一个侧面说明,python比较优秀,吸引的人才多,项目也多。

三、python的应用场景

1.Web应用开发

Python定义了WSGI标准应用接口来协调Http服务器与基于Python的Web程序之间的通信。一些Web框架,如Django,TurboGears,web2py,Zope等,可以让程序员轻松地开发和管理复杂的Web程序。比如,通过mod_wsgi模块,Apache可以运行用Python编写的Web程序。

2.操作系统管理、服务器运维的自动化脚本

Python编写的系统管理脚本在可读性、性能、代码重用度、扩展性几方面都优于普通的shell脚本。

3.科学计算

NumPy,SciPy,Matplotlib可以让Python程序员编写科学计算程序。

4.桌面软件

PyQt、PySide、wxPython、PyGTK是Python快速开发桌面应用程序的利器。

5.服务器软件(网络软件)

Python对于各种网络协议的支持很完善,因此经常被用于编写服务器软件、网络爬虫。第三方库Twisted支持异步网络编程和多数标准的网络协议(包含客户端和服务器),并且提供了多种工具,被广泛用于编写高性能的服务器软件。

6.游戏

很多游戏使用C++编写图形显示等高性能模块,而使用Python或者Lua编写游戏的逻辑、服务器。相较于Python,Lua的功能更简单、体积更小;而Python则支持更多的特性和数据类型。

四、2021年4月语言排行榜

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值