一、python的特殊缩进与语法
对于Python而言代码缩进是一种语法,Python没有像其他语言一样采用{}或者begin...end分隔代码块,而是采用代码缩进和冒号来区分代码之间的层次。缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。例如:
if True: print("Hello girl!") #缩进一个tab的占位 else: #与if对齐 print("Hello boy!") #缩进一个tab的占位
Python对代码的缩进要求非常严格,如果不采用合理的代码缩进,将抛出SyntaxError异常。下面这段代码会抛出异常
if True: print("Hello girl!") else: print("Hello boy!") print("end")
运行该段代码将会抛出异常。
错误表明,你使用的缩进方式不一致,有的是 tab 键缩进,有的是空格缩进,改为一致即可。
有时候代码采用合理的缩进但是缩进的情况不同,代码的执行结果也不同。有相同的缩进的代码表示这些代码属于同一代码块。例如:
if True: print("Hello girl!") else: print("Hello boy!") print("end") print("=========华丽的分割线===========") if True: print("Hello girl!") else: print("Hello boy!") print("end")
运行结果:
分割线以上的print("end")未缩进与if对齐,因此它与if属于同一代码块,执行完if的操作,执行输出。分割线一下的print("end")与print("Hello boy!")保持一致的缩进,则它与print("Hello boy!")属于else之内的代码块。缩进相同的一组语句构成一个代码块,我们称之代码组。
二、if条件判断语句
格式为:
if 判断条件:
执行语句.....
else:
执行语句.....
其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句.
流程图如下:
具体例子如下:
a = 3 if a <= -1: print('a是负数') elif a == 0: print ('a等于0') else : print('a是正数')
程序运行结果如下:
三、while语句
Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:
while 判断条件: 执行语句……
执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。当判断条件假false时,循环结束。如果条件判断语句永远为 true,循环将会无限的执行下去。执行流程图如下:
程序例子如下:
x = 5 while x>0: print ('111111') print ('222222') print ('333333') x -= 1
运行结果如下:
四、for循环
Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。for循环的语法格式如下:
for iterating_var in sequence: statements(s)
流程图:
相关函数:
1.enumerate():用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,语法为:
enumerate(sequence, [start=0])
参数:sequence -- 一个序列、迭代器或其他支持迭代对象。start -- 下标起始位置。
程序实例如下:
seq = ['one', 'two', 'three'] for i, element in enumerate(seq): print i, seq[i]
运行结果如下:
2.range():可创建一个整数列表。语法为:
range(start, stop[, step])
参数说明:start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
程序示例如下:
x = '123456' for i in range(len(x)) : print(x[i])
运行结果如下:
3.xrange():用法与 range 完全相同,所不同的是生成的不是一个数组,而是一个生成器,相比range()执行效率较高。语法:
xrange(stop)
xrange(start, stop[, step])
参数说明:
start: 计数从 start 开始。默认是从 0 开始。例如xrange(5)等价于xrange(0, 5);
stop: 计数到 stop结束,但不包括 stop。例如:xrange(0, 5) 是[0, 1, 2, 3, 4]没有5
step:步长,默认为1。例如:xrange(0, 5) 等价于 xrange(0, 5, 1)
五、break与continue
1.break
Python break语句,就像在C语言中,打破了最小封闭for或while循环。break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。break语句用在while和for循环中。如果使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。
程序代码如下:
for i in xrange(1,11): if i == 3: print ('hello world') break print ('i = %d'%i)
运行结果如下:
2.continue
Python continue 语句跳出本次循环。continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。continue语句用在while和for循环中。
程序代码如下:
for i in xrange(1,11): if i == 3: print ('hello world') continue print ('i = %d'%i)
运行结果如下: