之前看过一本100多页的《python简明教程》,都是些非常简单的语法,现在到真正用的时候根本无从下手,所以,重新捧起一本《python学习手册》,1000多页,希望每天看一些,坚持10天内把重要的部分看完并做实践,每天坚持写点学习笔记来监督自己往前走。废话不说,今天花了两个小时就把第一部分看完,做一点简单的总结。
pytho的使用和分发完全是免费的,它是一种面向对象的语言,它的。它的类模块支持多态,操作符重载和多重继承等高级概念,并且以python特有的简洁的语法和类型,OOP十分易于使用。python内置了众多预编译并可移植的功能模块,这些功能模块叫做标准库(standard library)。python可以调用C和C++的库,可以被C和C++的程序调用,可以与java组件集成,可以和COM和.Net等框架进行通信,并且可以通过SOAP、XML-RPC和CORBA等接口与网络进行交互,所以,python绝不仅仅是一个独立的工具。
python是“脚本语言”吗
python是一门多种用途的编程语言,时常扮演脚本语言的角色。一般来说,python可以定义为面向对象的脚本语言,这个定义把面向对象的支持和面向脚本语言的角色融合在一起。很多时候,人们常常喜欢用“脚本”和不是语言来描述python的代码文件。
python的缺点
到目前为止,python唯一的缺点就是:在目前现有的实现方式下,与C和C++相比,python的执行速度还不够快。这里的原因是python在执行的过程中,先将源代码先编译成字节码,在通过python虚拟机将字节码解释出来,而C和C++是将源文件编译成底层可识别的二进制代码,所以,通常一些python程序将会比像C这样完全编译语言慢一些。但从整体上,不管是从开发效率还是执行效率,python要优于这些语言好几倍,据某个权威机构调查显示,python在全球的使用量上排第七。
谁在使用python?
除了个人使用上,python也被一些公司应用与商业产品的开发上,如:
YouTube视频分享服务大部分有Python写的。
流行的p2p文件分享系统BitTorrent是一个python程序。
此外,像EVE Online网络游戏,Maya 3D建模与动画系统等等都是用python来写,可见python的重要程度。
使用python可以做什么?
系统编程:python提供对操作系统服务的内置接口,其标准库绑定了POSIX以及其他的常规操作系统的工具:像环境变量,文件,套接字,管道,进程等。
用户图形接口:python内置了TKinter标准的面向对象接口Tk GUI API,使python可以生成可移植的本地观感的GUI。通过一些适当的库,你可以在python中使用其他的GUI工具包,如:通过PyQt使用Qt、通过PyGTK使用GTK,通过PyWin32使用MFC、通过IronPython使用.NET以及通过Jython使用Swing等。
Internet脚本:python提供了标准Internet模块,它使得python可以通过套接字广泛地和网络进行通信。
数据库编程:python提供了对所有主流关系数据库系统的接口,如:Sybase,Oracle,Informix,ODBC,MySQL,PostgreSQL,SQLite(Android)等。
数学计算和科学计算编程:通过和NumPy的结合,python可以做很多有关数值计算的工作,如:矩阵计算,和标准数学库结合执行更多的数学建模等。
此外,还有游戏,图像,人工智能,XML,机器人等方面的应用。
python如何运行程序?
python运行程序的机制有点类似于java,源程序通过解释在到执行,需要解释器和虚拟机,解释器是一种让其他程序运行起来的程序,是代码与机器的计算机硬件之间的软件逻辑层。python源文件(.py)通过解释器编译成字节码文件(.pyc),然后在通过python虚拟机编程可执行文件(.exe),如下图:
如何运行程序?
运行程序的方式总的来说有
1、命令行交互式运行,以windows为例,用任何编辑器编写python源文件(如script.py),而后找到源文件,用python script.py运行,如果需要重定向,则用:
python script.py > script.txt
2、直接双击文本文件script.py,需要在文件后加输入标志(如:input()),否则会出现一闪即消失的情况。
3、模块导入和重载
导入的方式有以下几种:
import script.py
缺点:只能运行一次,如果文件修改,只能重新运行,不方便,改进如下:
from imp import reload
reload(script)
imp是标准库模块,import是一个语句,而reload是一个函数,所以调用时加括号。
此外,说点from和import的联系:从一个文件来说,import是可以导入一个文件,而from可以指定导入一个文件中的属性(也可以看成是变量),一个新建的文件有很多默认的属性,如下,通过dir()查看一个只有一个自定义的属性(变量)x的文件script.py:
4、此外,还可以用exec运行模块文件:
exec(open('script.py').read())
5、通过IDLE GUI界面来运行python文件,IDLE是安装python自带的运行软件,其自带编辑文本界面,方便实用。
初此之外,还可以通过eclipse来运行,不过需要安装python插件。
介绍一个工具Shedskin,其可以将python代码变为C++代码。