Python创始者Guido van Rossum。Python拥有一个开发社区,它进行版本的更新和开发改进。修改需要遵守PEP协议并且经过python的扩展回归测试系统。非正式组织PSF负责组织会议并处理知识产权的问题。目前O'Reily的OSCON和PSF的PyCon是python领域最大的会议。
Python可以定义为面向对象的脚本语言,也是一个名为解释器的软件包。解释器是让程序运行起来的程序,编写的Python程序必须在解释器中运行。
优点:Python致力于开发速度的最优化:简介的语法、动态类型、无需编译链接、内置工具包等特性。
Python语法简洁并且可读性强。
可移植性强:Linux, Windows, DOS, Mac OS.
Python脚本可通过集成机制和应用程序的其他部分进行通信。Python代码可以调用C和C++的库,也可以调用Matlab程序(通过shell命令执行matlab函数),可以被C和C++的程序调用,可以与Java组件集成,可以与COM和.NET等框架进行通信,并可以通过SOAP、XML_RPC和CORBA等接口与网络进行通信。
缺点:
执行速度不够快。Python的标准实现方式是通过编译代码,把代码转换成字节码的形式,然后再把字节码解释出来。但是Python没有把代码编译成底层的二进制代码,所以Python会比C这样的完全编译语言慢一些。Python语言有三种主要实现方式:CPython, Jython, IronPython,都用于实现Python语言,只是通过不同的形式执行程序。Cpython由ANSI C语言代码编写而成,运行速度最快、最完整而且最健全。Jython目的是为了与Java编程语言集成,是Python语言的Java实现。IronPython主要为了满足在.NET组建中集成Python的开发者,是Python语言的.NET实现。
但是Python也是可以用于实际应用产品的,比如YouTube视频分享服务大部分是由Python编写的;Eve Online多人网络游戏广泛地使用Python;iRobot使用Python开发了商业机器人真空吸尘器;Intel、Cisco和IBM使用Python进行硬件测试。
python怎么运行程序?首先把源文件翻译成字节码,储存在.pyc文件中;字节码发送到PVM上执行,PVM就是迭代运行字节码指令的一个大循环。
在交互提示模式下执行代码的时候,可以键入quit()或者以快捷键Ctrl+D退出到系统shell提示模式。
嵌入式调用:python程序嵌入在其他程序中运行。
在UNIX系统上使用python,可以把Python代码编程为可执行程序,这样的脚本往往叫做可执行脚本。UNIX风格的可执行脚本和一般python脚本的区别在于:
第一行是特定的:#!,后面跟着计算机上python解释器的路径,比如#!/usr/local/bin/python,操作系统会使用它找到解释器运行文件其他部分的程序
拥有可执行的权限:UNIX上可以使用chmod +x file.py赋予可执行权限
另外创建的脚本名可以不加.py后缀(加上也没关系),因为这个文件中的代码并不打算被其他模块所导入,所以这个不加.py是没关系的。可以在shell中运行它:
$file
如果不想硬编码python解释器的路径,可以使用env查找:#!/usr/bin/env python。env程序可以通过系统的搜索路径定位python解释器。
从一般意义上来说,模块往往就是变量名的封装,被认为是命名空间。在一个包中的变量名就认为是属性。一个模块文件的变量名可以通过两个python语句读取——import和from以及reload.
当文件导入时,它的代码运行并生成模块的属性。可以通过两种方法获得模块的属性:
import module :将模块作为一个整体载入
from module import variable_name:复制模块的属性
内置函数dir()可以返回模块内部的可用的变量名的列表:dir(module)。
python程序往往由多个模块构成,通过import语句连接在一起。