码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2014-10-29 02:06:30      阅读:358      评论:0      收藏:0      [点我收藏+]

标签:python   for   if   break   while   pass   

一、Python语句

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

    语句逐个运行

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

    块和语句的边界自动检测

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

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

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

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

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

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


    Python代码块

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


    Python语句分隔符

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

for i in range(
    10):
    print i

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

print ‘Python is good‘

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

print "he‘s a teacher"


二、If语句

    if语句格式:

        if 条件表达式:

            代码块1

        elif 条件表达式:

            代码块2

        elif 条件表达式:

            代码块3

        else

            代码块4


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

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

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


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

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

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

    执行结果为

B


三、While循环语句

    while语句格式:

        while (条件表达式):

            代码块


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

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

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

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

    执行结果为

4950


四、For循环语句

    for循环语句格式:

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

            循环体


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

            循环体


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

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

print range(1,10,2)
print xrange(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=0
for i in range(100):
    sum+=i
print sum

    执行结果为

4950


四、break、continue、pass、else语句

    1.break语句

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

for i in xrange(1,100):
    if i%4==0:
        break
    print i

    执行结果为

1
2
3

    2.continue语句

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

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

i=1
while (i<5):
    i+=1
    if i==3:
        continue
    print i

    执行结果为

2
4
5

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

i=1
while (i<5):
    if i==3:
        continue
    print i
    i+=1

    执行结果为

1
2

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

    for条件循环语句中的continue

for i in xrange(1,5):
    if i==3:
        continue
    print i

    执行结果为

1
2
4

    3.pass语句

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

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

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

for i in xrange(1,5):
    if i%4==0:
        pass
    print i

    执行结果为

1
2
3
4

    4.else语句

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

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

for i in xrange(1,5):
    print i
else:
    print ‘这是else语句‘

    执行结果为

1
2
3
4
这是else语句
for i in xrange(1,5):
    if i%2==0:
        break
    print i
else:
    print ‘这是else语句‘

    执行结果为

1


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

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

标签:python   for   if   break   while   pass   

原文地址:http://raffaele.blog.51cto.com/6508076/1569009

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!