第一章欢迎使用python。
- 交互式解释器。
- 编译型程序设计语言:将程序源代码“编译成”目标代码(机器语言)。编译程序将原程序翻译成目标程序后保存在另一个文件中。
- 解释型语言:解释型语言的实现中,翻译器并不产生目标机器代码,而是产生易于执行的中间代码。这种中间代码与机器代码是不同的。中间代码的解释是由软件支持的,不能直接使用硬件。软件解释器通常会导致执行效率较低。用解释型语言编写的程序是由另一个可以理解中间代码的解释程序执行的。预编译程序不同的是,解释程序的任务是逐一将源程序的语句解释成可执行的机器指令,不需要将源程序翻译成目标代码后再执行。解释程序的优点是当语句出现语法错误时,可以立即引起程序员意。
- 混合型:Java很特殊,Java程序也需要编译,但是是编译为字节码,然后再Java虚拟机上用解释方式执行字节码。Python类似,用Python字节码解释器负责解释执行字节码。
第二章:快速入门
print语句用来在屏幕上显示输出结果。(c语言printf, shell使用$echo命令。)python的字符串使用单引号表示。print语句中使用逗号分隔的元素输出时会自动在彼此之间加上一个空格做分隔符
raw_input()从标准输入读取数据,再把读到的字符串赋值给指定变量。
int()(1.5之前使用string.aoti()函数)把输入的数值从字符串格式转换为整数形式。
- 程序注释:在大多数脚本程序设计语言和UNIX的shell语言里,(#)表示从这个符号出现开始到该语句行结尾的文字将是一个程序注释。
- 操作符:加减乘除取余(+,-,*,/,%),乘方(**)。比较运算符(<,<=,>,>=),等于(==),不等于(!=或者<>),支持两种不等于符号,尽量使用前者
表达式连接操作符:与(and),或(or),非(not)。Python支持类似于(3<4<5)形式的表达式
大多数标准的类型都支持“+”。包括数值,序列
- 变量和赋值:python对大小写敏感。变量的类型动态定义,在赋值操作时确定。因此对变量及其类型预定义是不必要的。
python支持=赋值,或者类似*=的增量赋值,但是不支持n++,或者++n.
- 数字:支持四种数值类型:int(带符号整数),long(长整数),float(浮点实数),complex(复数)
python语言中的长整数的取值范围是用户(虚拟)内存能够表示的容量。类似于Java中的BigInteger类。
- 字符串:定义:引号之间连续的字符集合。(python支持‘’和""。习惯使用‘’)
分离操作符有"[]"和“[:]”。0为下标基址,-1指向最后一个字符。+是字符串合并操作符,*是重复操作符
- 列表和表列:两者与数组类似,但是他们可以容纳不同类型的对象。
列表用"[]"定义,元素及长度可变。表列用圆括号"()"定义。定义后不能再有变化。表列类似于只读的列表。分离操作符“[]”和“[:]”
- 字典:哈希表(hash table)数据类型(成对出现的关键字和值)使用“{}”定义
- 代码段使用缩进
- if语句:格式:if expression : if_suite(单个或者多个语句组成的子代码段)。if else, if else if ekse同理。只不过else if合并为“elif”保留字。Python语言里没有switch或case语句。
- while语句:格式:while expression: while_suite
- for循环和range()内建函数:
for var in 序列(可以为列表,表列,字符串): for_suite。range()内建函数生成一个数字列表。
- 打开一个文件:handle = open(file_name, access_mode = 'r') 返回一个文件对象的句柄
(file_name为文件名字符串,access_mode为”r“ 读操作,”w“ 写操作, ”a“ 添加操作, ”+“ 读写操作, ”b“ 二进制存取操作,缺省的为只读操作”r“)
- 错误和例外:try: try_running_this_suite except someError: suite_if_someError_occurs (raise命令引发例外)
- 函数:
1. 定义函数: def function_name([arguments]): "optional documentation string" functuation_suite
2. 缺省参数。
1. 类的定义:class class_name[(base_classes_if_any)]: "optional documentation string" static_member_declarations method_declarations
self类似C++或者Java中的this。
2. 创建类的实例:
- 模块:把彼此相关的Python代码物理地组织和划分到一个一个的文件中去。模块可以包含可执行代码,函数,类或者这些东西的各种组合。
1.导入模板:import module_name 调用:点属性记号访问属性
总结:使用交互式解释器对于脚本语言的学习者是个非常好的方法。可以避免养成很多不好的习惯。尤其是那个for和while后面的‘:’,总是容易忽略。