python(3)-- 语句:条件、循环、break、continue...
1. 条件语句
执行条件:判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。
【Python程序语言指定任何非0和非空(null)值为true,0 或者 null 为 false。】
判断条件:(1)可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。
(2)如果判断需要多个条件需同时判断时:
可以使用 or (或),表示两个条件有一个成立时判断条件成功;
使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。
基本形式:
if 判断条件1: 执行语句1…… elif 判断条件2: 执行语句2…… elif 判断条件3: 执行语句3…… else: 执行语句4……
2. 循环语句
循环类型:pyhon 里只有 for循环 和 while循环(在 Python 中没有 do...while循环):
循环控制语句: 循环控制语句可以更改语句执行的顺序。Python支持以下循环控制语句:
2.1 while循环
执行条件: 判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。
基本形式: 当判断条件为假,是false时,循环结束。
while 判断条件: 执行语句……
Gif 演示 Python while 语句执行过程,eg:
强调:
(1) while 语句时还有另外两个重要的命令 continue,break 来跳过循环,continue 用于跳过该次循环,break 则是用于退出循环,此外"判断条件"还可以是个常值,表示循环必定成立,具体用法如下:
# continue 和 break 用法 i = : i += > : # 非双数时跳过输出 continue print i # 输出双数2、、、、 i = : # 循环条件为1必定成立 print i # 输出1~ i += : # 当i大于10时跳出循环 break
(2)如果条件判断语句永远为 true,循环将会无限的执行下去。如下:
#!/usr/bin/python # -*- coding: UTF- -*- : # 该条件永远为true,循环将无限执行下去 num = raw_input("Enter a number :") print "You entered: ", num print "Good bye!"
注意:以上的无限循环你可以使用 CTRL+C 来中断循环。
(3)循环使用 else(while循环形式2-- while...else): 在循环条件为 false 时执行 else 语句块(即 while 不是通过 break 跳出而中断的),格式如下:
while 判断条件: 执行语句…… else: 执行语句......
实例,eg:
#!/usr/bin/python count = : print count, " is less than 3" count = count + else: print count, " is not less than 3" 以上实例输出结果为:
(4) 类似 if 语句的语法,如果你的 while 循环体中只有一条语句,你可以将该语句与while写在同一行中.
2.2 for循环: Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
基本语法格式:
for iterating_var in sequence: statements(s)
索引方式:自带索引 和 序列索引
- 自带索引,eg:
实例 #!/usr/bin/python # -*- coding: UTF- -*- for letter in 'Python': # 第一个实例 print '当前字母 :', letter fruits = ['banana', 'apple', 'mango'] for fruit in fruits: # 第二个实例 print '当前水果 :', fruit print "Good bye!" 以上实例输出结果: 当前字母 : P 当前字母 : y 当前字母 : t 当前字母 : h 当前字母 : o 当前字母 : n 当前水果 : banana 当前水果 : apple 当前水果 : mango Good bye!
- 序列索引,eg:
实例 #!/usr/bin/python # -*- coding: UTF- -*- fruits = ['banana', 'apple', 'mango'] for index in range(len(fruits)): print '当前水果 :', fruits[index] print "Good bye!" 以上实例输出结果: 当前水果 : banana 当前水果 : apple 当前水果 : mango Good bye!
强调:
(1)循环使用 else (for...else): lse 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行(,while … else 也是一样),eg:
实例 #!/usr/bin/python # -*- coding: UTF- -*- ,): # 迭代 到 之间的数字 ,num): # 根据因子迭代 : # 确定第一个因子 j=num/i # 计算第二个因子 print '%d 等于 %d * %d' % (num,i,j) break # 跳出当前循环 else: # 循环的 else 部分 print num, '是一个质数' 以上实例输出结果: 等于 * 是一个质数 等于 * 是一个质数 等于 * 等于 * 等于 * 是一个质数 等于 * 是一个质数
2.3 循环嵌套: Python 语言允许在一个循环体里面嵌入另一个循环。
基本语法格式1(for 自身循环嵌套):
for iterating_var in sequence: for iterating_var in sequence: statements(s) statements(s)
基本语法格式2(while自身循环嵌套):
while expression: while expression: statement(s) statement(s)
for 和 while 交叉嵌套:
while/for expression: for/while expression: statement(s) statement(s)
3. break,continue, pass 语句
3.1 break 语句:就像在C语言中,打破了最小封闭for或while循环。
作用:break语句用来终止循环语句,用于在 while 和 for 循环中。
执行条件:循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。
eg:
实例: #!/usr/bin/python for letter in 'Python': # First Example if letter == 'h': break print 'Current Letter :', letter # Second Example : print 'Current variable value :', var : break print "Good bye!" 以上实例执行结果: Current Letter : P Current Letter : y Current Letter : t Current variable value : Current variable value : Current variable value : Current variable value : Current variable value : Good bye!
3.2 continue 语句
作用:用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。用在while和for循环中。eg:
实例: #!/usr/bin/python # -*- coding: UTF- -*- for letter in 'Python': # 第一个实例 if letter == 'h': continue print '当前字母 :', letter 以上实例执行结果: 当前字母 : P 当前字母 : y 当前字母 : t 当前字母 : o 当前字母 : n
>>>强调:continue 和 break对比
continue 语句跳出本次循环,而 break 跳出整个循环!!
3.3 pass 语句: pass是空语句,是为了保持程序结构的完整性。
作用:pass 不做任何事情,一般用做占位语句。eg:
实例: #!/usr/bin/python # -*- coding: UTF- -*- # 输出 Python 的每个字母 for letter in 'Python': if letter == 'h': pass print '这是 pass 块' print '当前字母 :', letter print "Good bye!" 以上实例执行结果: 当前字母 : P 当前字母 : y 当前字母 : t 这是 pass 块 当前字母 : h 当前字母 : o 当前字母 : n Good bye!
最新文章
- Gravatar注册
- ASP.NET 画图与图像处理-生成高质量缩略图
- Linux网路编程系列-网络I/O模型
- JS魔法堂:被玩坏的innerHTML、innerText、textContent和value属性
- BusyBox Init
- libtool: Version mismatch error 解决
- UI控件入门
- C#的图片拼接
- 解决:用PivotGridControl 与 chartControl 配合使用,Series最大只显示10条
- ORA-600[kcratr_scan_lastbwr]逻辑坏块解决
- 套接字编程(VC_Win32)
- JPA 2.1实例(hibernate 实现)
- codeforces 558/C Amr and Chemistry(数论+位运算)
- js中变量的连续赋值
- java伪代码
- Ionic3 下拉刷新
- jq 抽奖转盘
- Aho-Corasick算法学习
- EMQ消息队列初体验
- Idea书签管理器的使用