您的位置:首页 > 编程语言 > Python开发

Python 笔记——4 条件控制

2013-07-03 11:57 429 查看
上一章讲了Python的数据类型及其用法,这一章来讲解Python的条件控制。

1、if 条件

  if条件应该是所有编程语言中最经典的控制条件,但在python中,可以使用elif作为else if 的缩写。请注意:Python是一门强调缩进的语言,在if的条件后加入:表示这里是执行语句的入口,然后下一行必须按TAB缩进,下面的elif必须与上面同级的if对齐。

>>> x = int(input("请输入一个整数:"))
请输入一个整数:11
>>> if x == 0:
print(0)
elif x > 0:
print(x)
else:
print(-1)

11


  那么在python中的三元表达式怎么写呢?x if y else z,假若满足条件y,则返回x,否则返回z。

>>> x = 1
>>> y = 2
>>> "123" if  x > y else "321"
'321'


2、for

  python中的for与C#中的foreach 和 JAVA中的for有点相像。它能够遍历迭代器。下面我做了一个example,在py文件的文件夹中新建一个txt文件,里面放好我要遍历的文字。在py文件中定义函数main,首先打开test.txt,把所有行读取出来,给x赋值,打印出来以后发现是一个列表。当我使用for 来遍历x的时候,从x中读取每一行赋值给line,print之。

def main():
fh = open('test.txt')
x = fh.readlines()
print x
for line in x:
print(line)

if __name__ == "__main__" : main()

['1 hi\n', '2 hello\n', '3 hello world']
1 hi

2 hello

3 hello world


3、while

  while循环和其他语言没有什么区别,当while中的条件为true的时候执行,否则结束循环。

def main():
i,j = 1,0
while (i <= 100):
j,i = j+i,i+1
print(j)

if __name__ == "__main__" : main()

5050


4、enumerate函数

  虽然这一节讲的条件控制,但是是在介绍for的时候不得不说一下enumerate这个函数。每一次它会返回两个值,第一个是index,第二个是值。

def main():
str = 'HelloWorld'
for i,s in enumerate(str):
if s == "o":print('index {} is {}'.format(i,s))

if __name__ == "__main__" : main()

index 4 is o
index 6 is o


5、break、continue、else

  break表示跳出该循环,continent表示继续执行下一步,而else则是在循环结束时自动调用。在下面的程序中,有一个叫做range的函数,它有三种模式。

range(x)、range(x,y)、range(x,y,z)。第一种是从0开始遍历到x-1,第二种是从x开始遍历到y-1,第三种是从x开始遍历到y-1,但步长为z。

def main():
for x in range(1,10):
for y in range(1,x):
if y == 5:
break
else:
print(x),'break'
i = 0
for z in range(1,10):
if (z % 2 == 0):
continue
else:
print z,'continue'

if __name__ == "__main__" : main()

1 break
2 break
3 break
4 break
5 break
1 continue
3 continue
5 continue
7 continue
9 continue


  最近有点事,要研究新算法,更新速度有点慢,内容也有点少,不过这些都是python比较基础的东西,在我写完预计的18-20章以后,再写一些项目实例。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: