第一章 认识Python
1.1启动Python解释程序
下载一个去安装。提示符">>>"。
第一个例子:
>>> print "Hello world!"
Hello world!
要退出解释程序,输入文件结束符,在Windows中的Ctrl+Z,在Linux下的Ctrl+D,之后按下Enter键。
1.2用变量和表达式进行试验
1.2.1袖珍计算器
可以在交互模式下直接进行计算。
>>> 8/2
4
1.2.2变量
使用变量在一定时间内保留值。变量总是要引用值。变量没有类型,但是对象有类型。不需要声明变量。但是在给一个变量分配值之前,不可以访问,否则会发生NameError错误。
Python区分大小写。
1.3定义函数
def FunctionName(parameter,...):是函数定义的开始,之后是缩进。Python中的缩进有语法意义。遇到非缩进的代码行时就直到该代码块结束了。
1.4运行Python程序
python spam.py
在Windows系统中还可以用鼠标双击执行。在UNIX系统中可以在文件首行加入
#!/usr/bin/python
并且给文件加上可执行属性来直接执行脚本文件。
1.5循环和控制
一个计算500以内质数表的程序:
for PrimeTest in range(2,500):
IsPrime=1 #0是false,非零是true
for TestFactor in range(2,PrimeTest):
if(PrimeTest % TestFactor==0):
IsPrime=0
break
if(IsPrime):
print PrimeTest
1.5.1整除
运算符"%"是取模,即在整除中得到余数。整数和整数相除是整除。
1.5.2循环
for语句设置了一个循环,并在range(startnum,endnum)中设置范围。这里的每次循环PrimeTest都会从range()中获得一个值。
1.5.3采用if语句的分支
if expression:是一个控制块的开头。条件表达式中不允许赋值。
1.5.4中断和继续
break跳出最内层循环。
1.6列表和元组
列表(list)是包含0个或多个元素的有序集合,写列表时用逗号隔开元素,并放在方括号中。
FibonacciList=[1,1,2,3,5,8]
1.6.1元组
元组与列表类似,但是不可改变,使用圆括号。
1.6.2切片和切换
列表是有序的,所以每个列表元素都包含一个索引,可用listname[index]来访问某个元素。索引编号从0开始。
索引编号可用负数,代表从后向前索引,-1是最后一项。
可用listname[start:end]访问子列表,从start开始,到end,但是不包括end。start和end都可以省略,代表从开头或者到结尾。
列表、元组和字符串都是序列类型(Sequence type)。序列类型都支持索引访问,也包括切片操作。
元组和字符串都是不可变的类型,不允许修改其中的元素。但是可以先转换成列表,修改之后再转换回去。例如从元组创建列表:
aList=list(aTuple)
从列表转换到元组:
aTuple=tuple(aList)
1.7词典
词典(Dictionary)是一个Python对象,能够对不同的值交叉引用不同的键。值可为任意对象。
{key:value,key:value}
查找一个值时用dict[key]。但是当访问不存在的键时会发生异常KeyError,用dictionary.get(key,defaultValue)函数可以完成安全获取,即返回一个缺省值。一般缺省值取None,类似于C语言中的NULL。
1.8读写文件
创建文件对象用open(filename,mode)函数,mode是一个字符串指定文件打开方式。得到文件对象之后可以使用read()和write()读写文件,最后用close()来关闭文件。
1.9样例程序:字频率
不同的作者会使用不同的字频率,有助于识别作者。代码略。
1.10加载及使用模块
导入一些其他库import modulename。导入后可用moduleName.itemName