zoukankan      html  css  js  c++  java
  • Python基础篇【第四篇】:循环语句

    循环语句包含:while和for语句

    while循环

    whil循环的表达式:

    while 判断条件:
    (这里统一四个空格)语句

    一定要注意缩进和判断条件后面的冒号!

    例如用while计算1-100的和:

     1 #!/usr/bin/env python3
     2 
     3 a = 100
     4 b = 0
     5 counter = 1
     6 
     7 while counter <= a:
     8     b = b + counter
     9     counter += 1
    10 print(b)

    运算结果:

    1 /Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5 /Users/zk/PycharmProjects/old_boy/day02/循环/while.py
    2 5050
    3 
    4 Process finished with exit code 0

    for语句

    for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

    for循环的格式:

    1 for <变量> in <序列>:
    2     <声明>
    3 else:
    4     <声明>

    在循环中跳出break:

     1 #!/usr/bin/env python3
     2 
     3 a = ["C", "C++", "Perl", "Python"]
     4 for i in a:
     5      if i == 'C':
     6          print('列表中包含C')
     7          break   #跳出本次循环
     8      print('干的漂亮~')
     9 else:
    10      print('列表中没有C')
    11 print('呵呵')

    运行结果:

    1 /Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5 /Users/zk/PycharmProjects/old_boy/day02/循环/while.py
    2 列表中包含C
    3 呵呵
    4 
    5 Process finished with exit code 0

    range()函数

    如果你需要遍历数字列表,可以使用内置函数range()。他会生成数列:

    1 >>> for i in range(5):
    2 ...  print(i)
    3 ... 
    4 0
    5 1
    6 2
    7 3
    8 4

    也可以指定range区间的值:

    1 >>> for i in range(5,9):
    2 ...  print(i)
    3 ... 
    4 5
    5 6
    6 7
    7 8

    也可以用range指定数字开始并指定不同的增量(甚至可以是负数;有时这也叫做步长)

    1 >>> for i in range(0,10,3):
    2 ...  print(i)
    3 ... 
    4 0
    5 3
    6 6
    7 9

    也可以结合range()和len()函数遍历一个序列的索引:

     1 >>> a = ['Mary', 'had', 'a', 'little', 'lamb']
     2 >>> for i in range(len(a)):
     3 ...     print(i,a[1])
     4 ... 
     5 0 had
     6 1 had
     7 2 had
     8 3 had
     9 4 had
    10 >>> for i in range(len(a)):
    11 ...     print(i,a[i])
    12 ... 
    13 0 Mary
    14 1 had
    15 2 a
    16 3 little
    17 4 lamb

    用range()函数创建一个列表:

    1 >>> list(range(5))
    2 [0, 1, 2, 3, 4]

    brea和continue语句及循环中的else子语句

    break语句可以跳出for和while的循环体。如果你从for或while循环中终止,任何对应的循环else块将不执行。

    continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环。

    循环语句可以有else子句;它在穷尽列表(以for循环)或条件变为假(以while循环)循环终止时被执行,但循环被break终止时不执行.如下查寻质数的循环例子:

    1 for i in range(2,10):
    2     for x in range(2,i):
    3         if i % x == 0:
    4             print(i,'equals',x,'*',i//x)
    5             break
    6 else:
    7      print(i,'is a prime number')

    运行结果:

    1 /Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5 /Users/zk/PycharmProjects/old_boy/day02/循环/while.py
    2 4 equals 2 * 2
    3 6 equals 2 * 3
    4 8 equals 2 * 4
    5 9 equals 3 * 3
    6 9 is a prime number
    7 
    8 Process finished with exit code 0

    pass语句

    pass语句什么都不做。它只在语法上需要一条语句但程序不需要任何操作时使用.例如:

    1 >>> while True:
    2 ...     pass  #如果回车还会一直在等待状态
    3 ... 

    enumrate

    为可迭代的对象添加序号:

    1 li = ['haha','hehe','asd',124]
    2 for k,v in enumerate(li,1):     #1表示从一开始添加序号
    3     print(k,v)

    运行结果:

    1 /Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5 /Users/zk/PycharmProjects/old_boy/day02/循环/while.py
    2 1 haha
    3 2 hehe
    4 3 asd
    5 4 124
    6 
    7 Process finished with exit code 0

    *在Python3.x中xrange已经没了,range相当于python2.x中的xrange

  • 相关阅读:
    idea配置tomcat运行按钮置灰,下拉没有自定义的tomcat选项
    配置多版本jdk,自由切换jdk版本
    五年经验程序员告诉你,如何确定自己是否适合做程序员
    你的编程能力从什么时候开始突飞猛进?
    10 个提升效率的Linux小技巧
    8 种经常被忽视的 SQL 错误用法,你有没有踩过坑?
    十大优秀编程项目,让你的简历金光闪闪
    一文掌握 Lambda 表达式
    一文详解微服务架构(一)
    Java的参数传递是「按值传递」还是「按引用传递」?
  • 原文地址:https://www.cnblogs.com/allan-king/p/5450880.html
Copyright © 2011-2022 走看看