python基础(二)-循环

流程控制在编程中也算是程序员们必须掌握的一项技能,其中就包括if、while、for三大语法。

在介绍这些语法之前,我们可以了解一些基本知识点:

  • 固定语法方面,python用缩进来表示代码的归属,同一缩进的代码,称之为代码块。我们在写代码时,代码上下行通常都不在同一层次上。
  • 布尔值为False数据有哪些:0,None,‘ ’,[ ],{ }。布尔值可以直接用来判断。变量名也可以用来判断,因为变量名指向的值对应的就是True或Flase
  • 如果我们判断女生是否漂亮,可以用is_beautiful

if语法

我们想要让计算机像人一样去工作,那么计算机也应该有对事物的对错,真假,是否可行的判断能力,从而做出不同的相应操作,if判断就派上了用场。

if语句有自己的固定语法:

  • if 条件1:

    缩进的代码块

    ......

  • if 条件1:

    缩进的代码块

    ......

    else:# 不能单独使用,必须和if,while,for配和使用

    缩进的代码块

    ......

  • if 条件1:

    缩进的代码块

    ......

    elif 条件2:

    缩进的代码块

    ......

    else:

    缩进的代码块

    ......

另外if、elif、else在同一级别配合使用时,只会指向一个代码块(走了if就不会走elif、else,走了elif就不会走if、else,走了else就不会走if、elif);if语句是可以嵌套在代码中的。

while循环语句

固定语法:

while 条件:    
    # 循环体
    # 如果条件为真,那么循环体则执行,执行完毕后再次循环,重新判断条件
    # 如果条件为假,那么循环体不执行,循环终止

break:立即结束本层循环(只针对它所属的while有效)

continue:跳出本次循环,直接开始下一次循环

举个例子:循环打印1,2,3,5,6,7,8,9,10

n = 1
while n < 11if n == 4
​                n += 1continueprint(n)
​        n += 1

# 死循环

import time
num=0
while True:
    print('count',num)
    time.sleep(1)
    num+=1

死循环是永远无法自动结束的循环。

# while循环也是可以嵌套的

还有一种情况,我们可以提前设置一个全局标志位,例如下图中的flag(flag = True)

while+else同样可以连用

只有当while循环依据条件正常结束才会走else代码,如果是主动结束的break,那么就不会走else。

FOR循环

for循环不依赖于索引取值,它的语法结构如下:

  for 变量名 in 容器类型:

    缩进的代码块,

例如:

l为正常列表时:

  for i in l:

    print(i)

d为正常的字典时:

  for i in d:

    print(d[i])# 字典再被for循环的时候,只会返回出它的key,value是不会主动暴露给用户的

用for循环循环打印1~10:

  print(range(1,10)) # [1,2,3,4,5,6,7,8,9]

   for i in range(1,10):

    print(i)

迭代式循环:for,语法如下

  for i in range(10):

    缩进的代码块

这里我们用range的原因是,for循环语句中没有了条件语句,所以我们可以借助迭代器range。

而range在python2与python3中也有区别:

  python2中

    1.range其实就是一个列表

    2.xrange其实就是你python3中的range

  python3中range就是一个迭代器,你需要值的时候我才给你。

for循环语句同样也可以循环嵌套

比如下图中的打印九九乘法表

for循环嵌套时,内层循环的range条件是根据外层循环决定的。

当提供给我们的列表、链表却没有提供具体的元素个数时,我们可以用内置函数len()来解决问题。

print(len(d))
n = 0
while n < len(l):
     print(l[n])
     n += 1

len() # 获取数据类型(容器类型)的长度或个数;字符串是特例,因为它获取的是字符的个数。

posted @ 2019-07-02 16:56  泡泡茶壶i  阅读(244)  评论(0编辑  收藏  举报