Python3学习笔记 | 十五、Python的语句与语法-while语句与for语句

一、while 语句

1、简介

在Python里,while语句是最常见的循环语句。先看一下while语句的一般格式:

while <test1>:
<statement1>
else:
<statement2>

只要测试语句为真,会一直循环。当test1为假的时候会运行else语句里的内容。 从这里,退出循环的方法有:

1、在里的语句更改的结果为False

2、在里的语句里增加break语句来跳出循环

3、在里的语句里增加exit()来退出Python,这种方法将退出整个Python程序。

2、while循环例子

死循环:

while True:
print 'Please type "Control" + "C" to stop this'

这个循环会在你屏幕上一直打印重复的语句,使用Control +C的组合键可以退出。

>>> a = 0 ; b = 7
>>> while a < b :
...     print(a,end=' ')
...     a += 1
...
0 1 2 3 4 5 6 >>>

二、break, continue语句

break语句是用来退出最近所在的for语句或while语句。

continue语句是用来跳到最近所在的for语句或者while语句的结尾。

>>> a = 0 ; b = 7
>>> while a < b :
...     a += 1
...     if a == 3 : continue
...     if a == 6 : break
...     print(a,end=' ')
...
1 2 4 5 >>>

三、pass 语句

之前讲过,pass语句是占位的空语句。因为有些时候(测试时)需要写框架,但里面没有具体语句,但需要正常运行的时候,就需要设置空语句(pass)来代替。

>>> if 1 :
...     print('DoraEmon')
... else :
...
File "<stdin>", line 4^
IndentationError: expected an indented block

在这个时候我们需要一个pass来替代else自语句里的空。

>>> if 1 :
...     print('DoraEmon')
... else :
...     pass
...
DoraEmon

四、else 语句

else语句,只有在for语句和while语句正常结束后,会运行:

>>> a = 0 ; b = 7
>>> while a < b :
...     print(a,end = ' ')
...     a += 1
... else :
...     print('DoraEmon')
...
0 1 2 3 4 5 6 DoraEmon

但中间有break的时候,就不会执行else

>>> while True :
...     print('Dora')
...     break
... else :
...     print('Emon')
...
Dora

else语句能帮助你在语句正常执行时插一句。

五、for 语句

1、简介

for语句在Python里是一个通用的序列迭代器:可以遍历任何有序的序列对象内的元素。可用于字符串、列表、元祖、其它内置可迭代对象以及之后我们能够通过类所创建的新对象。 一般格式:

for <target> in <object>:
<statements>
else:
<statements>

在这里object 需是可迭代的对象。每次从object里提取一个元素赋给target,之后循环之行statements里的语句。

2、for循环用法

使用for循环时,其它开发语言(比如C)会使用一个变量,定义起始,结束,递增值。但Python里只能做迭代。这个时候可以使用range函数来代替。

range函数格式: range([起始值],结束值,[递增值])

在这里,起始值默认是0,递增值默认为1。C语言里for(i=0,i<7,i++)可以写成 for i in range(0,7,1)。因为起始的0与递增值1可以省略,可以写成for i in range(7)。

>>> for i in range(7) :
...     print(i,end = ' ')
...
0 1 2 3 4 5 6 >>>

迭代后的元素为固定长度的元祖、列表的时候:

>>> for a,b,c in [(1,2,3),(4,5,6),(7,8,9)] :
...     print(a,b,c)
...
1 2 34 5 67 8 9

嵌套循环(不一定是固定长度):

>>> for i in [(1,2,3),(4,5,6),(7,8,9)] :
...     for j in i :
...             print(j,end = ' ')
...     print()  #起到换行作用
...
1 2 3
4 5 6
7 8 9

本文分享自微信公众号 - TeamsSix(OldCat0111)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-02-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券