Python学习笔记 - 4.迭代(while,for)

更新变量

    x=x+1

while语句

    n = 5
    while n > 0:
        print n
        n = n-1
    print 'Blastoff!'

每执行一次循环体, 称为一次迭代。

“无限循环”与break语句

    n = 10
    while True:
        print n,
        n = n - 1
    print 'Done!'

只要将break语句放进循环体, 明确退出条件及行为。 当达到结束条件时, 就可以结束循环

举例来说, 如果想要用户直到输入done时结束的话, 代码可以这样写:

    while True:
        line = raw_input('> ')
        if line == 'done':
            break
        print line
    print 'Done!'

使用continue语句结束迭代

若想要结束当前迭代, 立刻进行下一轮迭代。 在这种情况下, 使用continue语句跳入下一轮迭代, 无需完成当前迭代的循环体。

    while True:
        line = raw_input('> ')
        if line[0] == '#' :
            continue
        if line == 'done':
            break
        print line
    print 'Done!'

除了#号开头的行, 其他所有的行都被打印出来。

使用for语句定义循环

    friends = ['Joseph', 'Glenn', 'Sally']
    for friend in friends:
        print 'Happy New Year:', friend
    print 'Done!'

friends变量是包含三个字符串的列表。friend是for循环的迭代变量,这个迭代变量取得friends中存储的三个字符串。

输出结果:

    Happy New Year: Joseph
    Happy New Year: Glenn
    Happy New Year: Sally
    Done!

循环模式

    total = 0
    for itervar in [3, 41, 12, 9, 74, 15]:
        total = total + itervar            
    print 'Total: ', total

可用内置函数sum()求列表各项的和

最大值与最小值循环

    largest = None
    print 'Before:', largest
    for itervar in [3, 41, 12, 9, 74, 15]:
        if largest is None or itervar > largest :
            largest = itervar
        print 'Loop:', itervar, largest
    print 'Largest:', largest

在循环开始之前, 将largest设为常量None。 None是一个特殊的常量, 表示变量为“空”。

调试

在程序的中间位置, 寻找一处可验证的代码, 插入一个print语句( 或者其它可验证效果的语句) , 然后运行程序。

每执行一次这样的检查, 你就会把代码范围缩减一半。

作业总结

注释大片区域

用3个单引号, 包住想注释的内容再加上后3个单引号:


”’
”’

is 和 ==,is not 和 != 不是一个概念

  1. ==是value判断,不同类型不一样
  2. is是看两个标识符是不是引用自一个对象,利用id()就明白,id可以理解为内存地址,引用地址

    >>> a = 3
    >>> b = 3
    >>> a == b
    True
    >>> id(a)
    11163864
    >>> id(b)
    11163864
    >>> a is b
    True
    >>> b is a
    True
    
    >>> a = [1,3]
    >>> b = [1,3]
    >>> a == b
    True
    >>> a is b
    False
    >>> id(a)
    11794392
    >>> id(b)
    11813392
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值