Python进阶(一)——安装Python、程序执行、Python模块和IDLE调试
近几年来,随着google、youtube、irobot等大公司对python语言的广泛使用,python公司的身影经常出现与我们的视线,python语言也在软件质量、开发效率、程序的可移植性、标准库的支持等方面成为了一个优秀的语言,可以完成网站、游戏开发到航空航天控制等领域的各种任务。本栏目希望通过学习《python学习手册》和网站上的相关指导,从零学习python,希望对大家有一些帮助。
本栏目开发环境:windows 7 + python 2.7.2 + vs2008(以后集成)
python进阶(一)——安装python、程序执行和python模块
§一、安装python
1. 下载active python安装包
根据你机器型号download python,32b选择for windows x86,64b选择for window 64b
2. 运行,安装,成功
§二、程序执行
3. 打开idle(python gui),输入简单脚本
4. python传统运行模式:
python解释器:运行python程序的程序;
python字节码:python将程序编译后所得到的底层形式;python自动将字节码保存为名为.pyc的文件中;
录入的转换为字节码->字节码在pvm(python)中运行->代码自动被编译,之后再解释
与c++不同,
python无“build”和“make”的步骤,代码写好后立即运行
python字节码不是机器的二进制代码(so 不能像c++运行速度那么快,其速度介于传统编译语言和传统解释语言之间)
5. python编译器的替代实现:
cpython(python的c代码编写实现,是python语言的标准实现)
jpython(集成java环境,即python语言的java实现)
ironpython(集成windows上的.net框架,即python语言的.net实现)
6.编写.py文件:
打开编辑器pythonwin:
新建一个文件,我存在桌面上
可以在cmd中运行:
也可以在pythonwin中直接运行,运行结果见“interactive window”窗口:
7.其他启动方式:
法一、ctrl+r(运行):python
法二、另一种运行方式,我们来看,双击script1.py,窗口一闪而过。很像vc运行时的ctrl+f5对不对?那怎么办呢?(非windows可以跳过,不用此技巧)
这里我们加入一句话raw_input(),先来看看效果:
保存后再双击script1.py,显示:
那么,raw_input()是什么呢?
一般来说,raw_input读取标准输入的下一行,若未得到就一直等待,也就相当于一个cin,当然,其语法和cin还是有很大出入的,raw_input()有三种方式:
第一种方式结果如下:
后面两种以后的章节中还会讲。
但是呢,用这种方法双击打开不会显示python文件中的错误,而通过系统命令行huozheidle都可以看到生成的错误信息。所以尽量不用双击的方式运行python程序。
§三、python模块
8.什么是模块?
什么是模块?
每一个.py文件都是一个模块,其他文件可以通过导入一个模块读取这个模块的内容,相当于c中的include……一个大型程序往往呈现出多模块的形式。其中一个模块文件被设计为主文件(or顶层文件)。
9.模块的导入:
模块位置
这里我们做一个最简单的example,更为详细的后面讲。这里把刚才写的script1放在我们安装python的位置:
然后开始-运行-python:
10. import,from 和 reload
模块只可以导入一次
导入是一个开销很大的操作,以至于每个程序运行只可以导入一次。想再次运行除非调用内置reload函数:
import和reload不同的是,import不需要括号,是一个语句,而reload是一个函数,其返回值是一个python模块对象。
模块扮演了工具库的角色:模块往往是变量名的封装,可被视作命名空间;在一个包中的变量名就是属性,或者说,属性就是绑定在特定对象上的变量名。一个模块通常可以有两个两个python语句读入:import 和 from,以及reload函数的使用
import语句将模块作为一个整体引用,相当于引入一个类的object。看下面的效果就明白了。myfile作为一个模块被引用,然后script1就可以使用myfile的属性了。
另一种引用方法:
图中所示,from和import很相似,只不过后者增加了对变量名的额外赋值,也就是拷贝模块的属性,因此能够以title导入,而不是myfile这个对象。
import&from总结版:
dir(myfile)是获得myfile中的所有attribute,其中,前面带下划线的是python预定义的内置变量名
11. 模块的其他概念:
模块是python程序最大的程序结构
每个模块文件是一个独立完备的变量包装,即一个命名空间
execfile('myfile.py')是另一种程序执行方式,但是从本质上讲他并没有导入模块
12.使用idle进行gui下文本编辑的:
步骤:
file->new window
编辑脚本
run->run module(f5)
此外,还有一些注意事项:
idle中没有清屏选项
如果发生连接错误,试一下通过单个进程的模式启动idle。即在命令行cmd中切换到idle所在目录并用idle.py -n启动(c:\python27\lib\idlelib> idle.py -n)
§四、idle调试
13.idle中调试:
文本中在某一行设置断点:右键该行->set breakpoint
主窗口中debug->debugger
按debug control中的step逐行运行,变量见下方
=============================================
好了,开了一个头,让大家现对python有一个初步了解,本章中我们通过13个知识点给大家梳理了python的安装、程序执行和python模块的概念、引用以及稍稍介绍了下idle中python代码的调试,希望能够对初学者有一些帮助。
作者:abcjennifer