前面几章已经把python支持的基本数据类型简单介绍了一下,现在我们将要看到的是python的基本语法。

一、语句和语法
1、注释
注释是增加代码可读性的最重要的条件之一,一个没有注释的代码无论如何是不能称为可读性好的。
python中的注释主要有两种,行注释和块注释。
行注释是以“#”井号开头的,井号之后一行内的字符被python编译器视为注释。
行注释可以是一个新行,也可以在代码行内。
块注释就用三对连续的双引号或者单引号括起来的一行或多行字符。
块注释有需要注意的地方:第一,块注释可以做为文档注释,用于生成文档,在类或者函数/方法和变量等声明的下一行的块注释被视为文档注释,利用文档生成工具可以自动的生成文档。
第二,块注释可以被视为一个字符串(本来就是字符串,不过被赋予了注释的功能),可以执行一些字符串的操作,可以被赋值给一个变量,可以被打印等等。
2、缩进和折行
python语言是一个严格要求缩进的语言,这也是让许多反python者所诟病的地方,python里没有C中的大括号和某些语言中的end,python用良好的严格的缩进来区分代码块,相同缩进的语句视为一个代码级别,python编译器会检查你的缩进,如果缩进混乱,编译器是会报错的。
通常我们缩进是采用四个空格,或者一个tab,不要混用tab和空格,也许在这个编辑器里看起来是一样的,在另外的编辑器看起来就乱的很。有时候一行过长的语句可以用反斜杠来分解成几行来增加可读性。有两种情况可以不用反斜杠:一是包括小括号,中括号,大括号时,可以多行书写;二是三引号字符串可以多行书写。
推荐使用括号,可读性会更好。
如果同一行书写多个语句,可以用分号来分隔,但是没有人会鼓励你这么做。
3、变量赋值
python中,等号是主要的赋值操作符。
python中,对象是通过引用传递的,所以在任何时候,都要记住python传递的是一个对象的引用,而不是对象的值,不管这个对象是数字还是其他的类实例(当然类也是一个对象)。
C中的赋值语句其实被看作是一个表达式,可以返回一个值,可以被赋值给一个变量,但是在python中是不允许的。类似y = (x = x + 1)这样的语句会报错。链式赋值没有问题,例如x=y=z+1。
python还支持增量赋值,如果你熟悉C,那么你会对下面的操作符很熟悉:+=,-=,*=,/=,%=,**=,<>=,&=,^=,|=。
python不支持自增和自减操作符。
python支持多元赋值,其原理就是两个元组的引用。类似下面的:
(x,y,z) = (1,2,3)
你也可以不写括号,但是出于可读性的考虑,我建议你加上括号。
下面来举一个有趣的应用:交换两个变量的值。
先看下C语言的:
tmp = x;
x=y;
y=tmp;

再看下python的:

x,y = 1,2
x,y = y,x
:-) ,可以看出来,python省了一步中间变量的创建,而且在赋值之前,python已经对x,y的新值做完计算。原理是这样的,“=”传递的是引用,也就是说x,y的值是y,x的一个引用,那么y,x必然是做完交换后才能确保他的引用是交换完的。引用和他本身是相等的,计算过程并不是在赋值的时候。(呃,上面这段话很乱,我明白,但是我没说清楚。。。。)