Python学习笔记2—Python语句(顺序、选择、循环),,一、Python语句


一、Python语句

python语句大体上分为:顺序执行语句,条件执行语句,循环执行语句。

语句逐个运行

Python 从头到尾执行文件中的嵌套块中的语句

块和语句的边界自动检测

Python 没有 或者\ begin/end" 等分割字符

Python 使用首行下的语句缩进把嵌套块内的语句组合起来,没有分号结束,一行的末尾通常是语句的结尾

复合语句,首行 +":"+ 缩进语句

Python 中复合语句都遵循相同的格式,首行会以冒号终止,再接一个或者多个嵌套语句,通常都是在首行下缩进,缩进叫做块 , 也可以称为组, if 语句中, elif 和else 分句都是 if 语句的一部分 , 也是本身嵌套块的首行

空行,空格以及注释通常都被忽略

文档字符串,会忽略,但是会保存并由工具显示


Python代码块

Python 自动以缩进为边界,也就是程序代码左侧的空白,缩进至右相同距离属于统一块代码


Python语句分隔符

如果使用语法括号时,语句就可以横跨多行

foriinrange(10):printi

如果语句是以反斜线结束,就可以横跨多行

print‘Pythonisgood‘

字符串常量有特殊的规则 ‘""‘ 或者 "‘‘"

print"he‘sateacher"


二、If语句

if语句格式:

if 条件表达式:

代码块1

elif 条件表达式:

代码块2

elif 条件表达式:

代码块3

else

代码块4


if 语句有三部分组成:关键字本身,用于判断真假的条件表达式,以及当表达式为真或者非零时执行的代码块(关键字,条件表达式,代码块)

用于判断真假的条件表达式,可以是一个或者是多个,也可以成为多重表达式

一个复合语句(例如 if 子句, while 或 for 循环)的代码块仅仅包含一行代码,可以在同一行输入


elif 是 Python 的 else-if 语句, 它检查多个表达式是否为真, 并在为真时执行特定代码块中的代码.

和else一样,elif声明是可选的, 然而不同的是,if语句后最多只能有一个else语句,但可以有任意数量的elif语句.

a=87ifa>=90:print‘A‘elifa>=80:print‘B‘elifa>=70:print‘C‘elifa>=60:print‘D‘else:print‘E‘

执行结果为

B


三、While循环语句

while语句格式:

while (条件表达式):

代码块


while事实它上是一个条件循环语句. 与 if声明相比, 如果 if 后的条件为真, 就会执行一次相应的代码块. 而 while 中的代码块会一直循环执行, 直到循环条件不再为真

使用 while 循环,因为有可能 条件表达式 永远不会为布尔假. 这样一来循环就永远不会结束

while 循环的 代码块 子句会一直循环执行, 直到 条件表达式 值为布尔假. 这种类型的循环机制常常用在计数循环中,这些"无限"的循环不一定是坏事, 许多通讯服务器的客户端/服务器系统就是通过它来工作的

sum=0i=0while(i<100):sum+=ii+=1printsum

执行结果为

4950


四、For循环语句

for循环语句格式:

for 迭代变量 in range(start,end,step):

循环体


for迭代变量 in xrange(start,end,step):

循环体


每次循环,迭代变量被设置为可迭代对象(序列,迭代器,或者是其他支持迭代的对象)的当前元素, 提供给循环体语句块使用

range()与xrange()区别:每当执行到range时,系统都会把range中的所有数都读取一遍,然后再进行其他操作;当程序执行到xrange时,系统会直接找出xrange中需要的值。因此,xrange的速度要比range快,应避免使用range

printrange(1,10,2)printxrange(1,10,2)

执行结果为

[1,3,5,7,9]xrange(1,11,2)


for提供了 Python 中最强大的循环结构.它可以遍历序列成员, 可以用在 列表解析 和 生成器表达式中, 它会自动地调用迭代器的next()方法, 捕获StopIteration 异常并结束循环(所有这一切都是在内部发生的)

for 是python中最常用的循环方式之一


用for循环访问迭代器和访问序列的方法差不多.唯一的区别就是for语句会为你做一些额外的事情.迭代器并不代表循环条目的集合.

迭代器对象有一个next()方法,调用后返回下一个条目.所有条目迭代完后,迭代器引发一个 StopIteration异常告诉程序循环结束.for语句在内部调用 next() 并捕获异常.

sum=0foriinrange(100):sum+=iprintsum

执行结果为

4950


四、break、continue、pass、else语句

1.break语句

Python中的break语句可以结束当前循环然后跳转到下条语句,类似C中的传统break.常用在当某个外部条件被触发(一般通过if语句检查),需要立即从循环中退出时.break语句可以用在while和for循环中break 语句用于打断列表的迭代.目的是为了找到列表中的目标元素,如果找到,则把它从数据库里删除然后退出循环

foriinxrange(1,100):ifi%4==0:breakprinti

执行结果为

123

2.continue语句

Python里的continue语句和其他高级语言中的传统continue并没有什么不同.它可以被用在 while 和for循环里.while循环是条件性的,而for循环是迭代的, 所以 continue 在开始下一次循环前要满足一些先决条件, 否则循环会正常结束当遇到 continue语句时,程序会终止当前循环,并忽略剩余的语句,然后回到循环的顶端.

while条件循环语句中的continue(把自增变量写到continue语句前)

i=1while(i<5):i+=1ifi==3:continueprinti

执行结果为

245

while条件循环语句中的continue(把自增变量写到continue语句后)

i=1while(i<5):ifi==3:continueprintii+=1

执行结果为

12

由上可以看出,打印出1和2后,程序会陷入死循环,因此,在条件循环语句中使用continue时,应多加注意。

for条件循环语句中的continue

foriinxrange(1,5):ifi==3:continueprinti

执行结果为

124

3.pass语句

Python没有使用传统的大括号来标记代码块,有些地方在语法上要求要有代码,而Python中没有对应的空大括号或是分号(;)来表示C语言中的"不做任何事",如果你在需要子语句块的地方不写任何语句,解释器会提示语法错误.

Python提供了pass语句,它不做任何事情-即 NOP,(No OPeration,无操作)从汇编语言中借用这个概念

pass 同样也可作为开发中的小技巧, 标记你后来要完成的代码

foriinxrange(1,5):ifi%4==0:passprinti

执行结果为

1234

4.else语句

可以在while和for循环中使用else语句

while和for循环中使用 else 语句.它们是怎么工作的呢? 在循环中使用时,else子句只在循环完成后执行, 也就是说break语句也会跳过else块

foriinxrange(1,5):printielse:print‘这是else语句‘

执行结果为

1234这是else语句
foriinxrange(1,5):ifi%2==0:breakprintielse:print‘这是else语句‘

执行结果为

1


本文出自 “Raffaele” 博客,请务必保留此出处http://raffaele.blog.51cto.com/6508076/1569009

Python学习笔记2—Python语句(顺序、选择、循环)

评论关闭