第三章 python流程控制

第一节    分支结构

if  else

1)if语句:

- Python的if语句类似其他语言。if语句包含一个逻辑表达式,使用表达式比较,在比较的结果的基础上作出决定。

- if expression:

statement(s)

注:Python使用缩进作为其语句分组的方法,建议使用4个空格代替缩进

下面这段代码是我们没有采用缩进的形式,在执行的时候出现的报错 
  1 #!/usr/bin/python 
  2 
  3 if 1<2: 
  4 print "ok"

[email protected]:~/Documents/py$ python if.py 
  File "if.py", line 4 
    print "ok" 
        ^

IndentationError: expected an indented block

我们通过一下代码查看缩进执行的效果

1 #!/usr/bin/python


  3 if 1>2: 
  4     print "ok" 
  5 print "main ok" 
[email protected]:~/Documents/py$ python if.py 
main ok

2)逻辑值(bool)用来表示诸如:对与错,真与假,空与非空等概念

3)逻辑值包含了两个值:

- True:表示非空的量(比如:string,tuple,list,set,dictonary等),所有非零数,

- False:表示0,None,空的量等

4)作用:主要用于判断语句中,用来判断

- 一个字符串是否是空的

- 一个运算结果是否为零

- 一个表达式是否可用

我们通过if调用一个函数来实现的一个例子

1 #!/usr/bin/python 
  2 
  3 def fun(): 
  4     return 1 
  5 
  6 if fun(): 
  7     print "ok"

5)elif语句:

- if expression:

statements(s)

elif expression2:

statement(s)

elif expression3:

statement(s)

else:

statement(s)

- elif语句可以让你检查多个表达式

为真值,并且执行一个代码块,elif语句是可选的。可以有任意数量的elif。

例子:嵌套来实现

1 #!/usr/bin/python 
  2 
  3 def fun(): 
  4     return 0 
  5      
  6 if fun(): 
  7     if y>=90: 
  8         print "A" 
  9     else 
 10         print "B" 
 11 else: 
 12     print "bad"

6)使用and、or、not

例子:

1 #!/usr/bin/python 
  2 
  3 def fun(): 
  4     return 0 
  5 
  6 if fun() and y>=90:    这里我们可以看到逻辑运算的使用,其他的例子再做 
  7         print "A" 
  8 else: 
  9     print "bad"

1 #!/usr/bin/python 
  2 
  3 def fun(): 
  4     return 0 
  5

6 if not fun() and y>=90:        由于前面的fun()函数的返回值是0,所以我们加一个not在

7         print "A" 
  8 else: 
  9     print "bad"

第二节    循环

1)循环是一个结构,导致一个程序要重复一定次数。

2)条件循环也是如此。当条件变为假,循环结束。

for循环:

- 在python for循环遍历序列,如一个列表或一个字符。

for循环语法:

- for iterating_var in sequence:

statements(s)

注:如果一个序列包含一个表达式列表,它是第一个执行。然后,该序列中的第一项赋值给迭代变量iterating_var。接下来,执行语句块。列表中的每个项目分配到iterating_var,代码块被执行,直到整个序列被耗尽。

注:格式遵循代码块缩进原则

1 #!/usr/bin/python 
  2

3 for x in [0,1,2,3,4,5,6]:        在这里我们看到他跟shell有点像

4     print "hello world"

3)迭代序列指数(索引):

- 遍历每个项目的另一种方法是由序列本身的偏移指数(索引):

例子:

1 #!/usr/bin/python 
  2 
  3 fruits = [‘banana‘,‘apple‘,‘mango‘] 
  4 for index in range(len(fruits)): 
  5     print ‘Current fruit:‘,fruits[index] 
  6      
  7 print "Good bye!"

注:“迭代”,指重复执行一个指令。

range

1)循环结构是用于迭代多个项的for语句,迭代形式可以循环序列的所有成员。

2)range(i,j,[,步进值])

- 如果所创建的对象为整数,可以用range,

- i为初始数值,

- j为终止数值,但不包括在范围内,步进值为可选参数,不选的话默认为1,

- i不选的话默认为0.

1 #!/usr/bin/python 
  2 for i in range(100):        这里我们指定他输出从0到99这100个数 
  3     print i,"hello world" 
下面我们可以指定起始值和终止值 
  1 for i in range(1,11): 
  2     print i,"hello world"

下面我们指定他的步进值为2

1 for i in range(1,11,2): 
  2     print i,"hello world"

使用索引取值:

1 #!/usr/bin/python 
  2 s = "hello" 
  3 for x in range(len(s)): 
  4     print s[x]

下面的例子我们会通过一个显示元素为一个元组

1 #!/usr/bin/python 
  2 s = "hello" 
  3 l = [1,2,3,‘a‘,‘b‘] 
  4 t = (7,8,9,‘x‘,‘y‘) 
  5 d = {1:111,2:222,3:333} 
  6 
  7 for x in d: 
  8     print d[x] 
  9 
 10 print d.items()

执行上面程序:

[email protected]:~/Documents/py$ python 10.py 
111 
222 
333 
[(1, 111), (2, 222), (3, 333)]

1 #!/usr/bin/python 
  2 s = "hello" 
  3 l = [1,2,3,‘a‘,‘b‘] 
  4 t = (7,8,9,‘x‘,‘y‘) 
  5 d = {1:111,2:222,3:333} 
  6 
  7 for x in d: 
  8     print d[x] 
  9 
 10 for k,v in iterms():    我们可以使用这样一个方法遍历字典 
 11     print k 
 12     print v 
这里我们在执行下面程序的时候,他会每隔一秒执行依次 
  1 #!/usr/bin/python 
  2 s = "hello" 
  3 l = [1,2,3,‘a‘,‘b‘] 
  4 t = (7,8,9,‘x‘,‘y‘) 
  5 d = {1:111,2:222,3:333} 
  6 
  7 for x in range(3): 
  8     print x 
  9     time.sleep(1) 
 10 else: 
 11     print "ending" 
我们可以在程序中相当于加断点执行

1 #!/usr/bin/python

import time

2 s = "hello" 
  3 l = [1,2,3,‘a‘,‘b‘] 
  4 t = (7,8,9,‘x‘,‘y‘) 
  5 d = {1:111,2:222,3:333} 
  6 
  7 for x in range(3): 
  8     print x 
  9     if x == 6: 
 10         break 
 11 else: 
 12     print "ending"

>>> print "a"*2        这里我们打印两个a

aa

下面我们看到了break和continue的用法

1 #!/usr/bin/python 
  2 s = "hello" 
  3 l = [1,2,3,‘a‘,‘b‘] 
  4 t = (7,8,9,‘x‘,‘y‘) 
  5 d = {1:111,2:222,3:333} 
  6 
  7 for x in range(3): 
  8     print x 
  9     if x == 3:

10       pass #(代码桩)这里使用pass占位,如果我们,没有语句块的时候,需要使用pass占位

11     if x == 2: 
 12         print "hello 222222" 
 13         continue 
 14     if x == 6: 
 15         break 
 16 else: 
 17     print "ending"

下面我们介绍我们如何让程序从某个点退出:

1 #!/usr/bin/python 
  2 s = "hello" 
  3 l = [1,2,3,‘a‘,‘b‘] 
  4 t = (7,8,9,‘x‘,‘y‘) 
  5 d = {1:111,2:222,3:333} 
  6 
  7 for x in range(3): 
  8     print x 
  9     if x == 3: 
 10         pass 
 11     if x == 5: 
 12         exit()            这里我们就直接结束了程序的后续执行,整个程序结束 
 13     if x == 2: 
 14         print "hello 222222" 
 15         continue 
 16     if x == 6: 
 17         break 
 18 else:    
 19     print "ending"

第三节    while循环

1)while循环,直到表达式变为假。表达的是一个逻辑表达式,必须返回一个true或false值

2)语法:

while expression:

statement(s)

注:遵循代码块缩进原则

时间: 2024-08-25 15:03:33

第三章 python流程控制的相关文章

第三章 程序流程控制

3.1 程序流程控制 判断结构 选择结构 循环结构 3.1.1 判断结构 if语句 三种格式: 1. if(条件表达式){ 执行语句: } 2. if(条件表达式){ 执行语句: } else { 执行语句: } 3. if(条件表达式){ 执行语句: } else if(条件表达式){ 执行语句: } ...... else{ 执行语句: } if控制的语句只有一条,可以不要{}:也就是说,如果if没有{},它只控制离它最近的那条语句. 3.1.2 选择结构 switch语句 switch(表

Python基础-Python流程控制

上篇文章 Python基础-基础使用 我们已经知道了Python解释器,Python的变量.和Python的输入输出.Python的注释和字符集,这篇文章,我们主要讲Python的流程控制 本文防盗链:http://python789.blog.51cto.com Python基础-Python流程控制 1.条件判断 1.1.if基本使用 if就是一个条件判断的,当满足不同样的条件的时候执行不同的操作,如法如下: if 条件1:     满足条件1 代码框 elif 添加2:     满足条件2

五、Python流程控制

Python流程控制 (1)if else语句: a.if语句 Python的if语句类似其他语言.if语句包含一个逻辑表达式,使用表达式比较,在比较的结果的基础上做出决定 Python使用缩进作为其语句分组的方法,建议使用4个空格代替缩进 #!/usr/bin/python if 1<2: print "ok" 逻辑值用来表示诸如:对与错,真与假,空与非空等概念 逻辑值包含了两个值: --True:表示非空的量,所有非零数 --False:表示0,None,空的量等 #!/us

Python流程控制 if / for/ while

在Python中没有switch语句 If语句 if condition: do sth elif condition: Do sth else: Do sth while语句有一个可选的else从句 while condition: do sth else: do sth for循环 for i in range(1, 5):     # 即序列[1, 2, 3, 4] print i else: print 'The for loop is over' break语句 如果你从for或whi

python 流程控制(条件语句)

1,python流程控制单条件基本语句 2,python流程流程多条件控制语句 1,python流程控制单条件基本语句 if 判断条件: 执行语句-- else: 执行语句-- 判断条件为真,即执行语句,否则执行else中的语句.变量非空或者不为0或者不为None即为真. 例子: #!/usr/bin/env python # -*- coding: UTF-8 -*- n = input('please input number:') if n > 0: print 'n为正数' else:

第四章 Shell流程控制

流程控制是改变程序运行顺序的指令. 4.1 if语句 4.1.1 单分支 if 条件表达式; then     命令 fi 示例: #!/bin/bash N=10 if [ $N -gt 5 ]; then     echo yes fi # bash test.sh yes 4.1.2 双分支 if 条件表达式; then     命令 else     命令 fi 示例: #!/bin/bash N=10 if [ $N -lt 5 ]; then     echo yes else   

python全栈开发【第四篇】Python流程控制

十二 流程控制之if-else 既然我们编程的目的是为了控制计算机能够像人脑一样工作,那么人脑能做什么,就需要程序中有相应的机制去模拟.人脑无非是数学运算和逻辑运算,对于数学运算在上一节我们已经说过了.对于逻辑运算,即人根据外部条件的变化而做出不同的反映,比如 1 如果:女人的年龄>30岁,那么:叫阿姨 age_of_girl=31 if age_of_girl > 30: print('阿姨好') 2 如果:女人的年龄>30岁,那么:叫阿姨,否则:叫小姐 age_of_girl=18

Python 流程控制

说到流程控制,其实如果学习了其他语言的话,再学习这些就会觉得很简单了,因为原理都是一样,只是语法变了而已.所以作为一个程序员一定要深入理解过一门语言,学了很多的语言,却不精通其中的一些的话,等于没有学,只能说你所知道的多了一些. 程序的基本流程结构: 顺序结构 选择结构 循环结构 顺序结构是最简单的程序流程,程序根据语句,一句一句的执行,不会遇到逻辑判断或者循环的情况 选择结构: 最简单的选择结构: if True: #statements1 else: #statements2 多分支的选择结

第三章:流程控制语句

第三章:流程控制语句 程序结构 顺序结构 分支结构 if结构if....else结构if...else if....else if...else结构switch结构 循环结构 while循环do....while循环for循环 分支结构 if结构 if结构语法: if(布尔表达式){ //语句;} 执行过程:如果布尔表达式为true执行其下语句,布尔表达式为false时不执行其下语句.{}可以省略,如果省略将执行第一个语句块.为了程序的可读性推荐不要省略{} if...else结构 语法:if(