zoukankan      html  css  js  c++  java
  • 第六章 控制流程


    ## 一、条件判断
    Python通过if-elif-else语句来进行条件判断。

    if后面条件的结果是布尔值。当if条件为真时执行if下面的语句;当if为假时执行else下面的语句;elif与if类似,等同于else if。
    ```python
    sex='未知'
    if sex=='男': #如果if后面的表达式返回True,执行本次代码块
    print('男性')
    elif sex=='女': #如果上一级if判断为False,则执行本次判断,如果elif表达式判断为True,则执行本次代码块
    print('女性')
    else sex=='未知': #如果以上所有判断不满足,执行本代码块
    print('未知性别')
    ```
    运行以上代码块,结果为:未知性别
    ## 二、三木运算
    三木运算是简单的条件判断的简写
    ```python
    x=5
    if x%2==0:
    result='偶数'
    else:
    result='奇数'
    print(result)
    #以上六行代码块是普通条件判断语句
    #以下三行代码块就是以上六行代码块的简单简写,也就是三木运算
    x=5
    result='偶数' if x%2==0 else '奇数'
    #值1 if 判断表达式 else 值2
    #如果表达式表达式返回True,三目运算返回值1,如果表达式表达式返回False,三目运算返回值2
    print(result)
    ```
    ## 三、条件循环
    while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。
    ```python
    i=0 #首先,定义i对象等于0
    while i < 5: #写出一个判断表达式
    print(i) #如果表达式返回True,则打印i值
    i += 1 #使i递增,改变i对象
    #以上四行代码块,返回结果为:
    0
    1
    2
    3
    4
    当i=5时,表达式返回False,则退出循环。
    ```

    ### 1、break
    那么,有没有终止循环的代码呢?
    ```python
    i=0
    while i < 5:
    print(i)
    i += 1
    if i == 3: #当i等于3时,执行break,代表跳出循环,不再执行
    break
    #返回结果为:
    0
    1
    2
    当i等于3时,if 判断语句为True,则执行break退出循环。
    ```
    ### 2、continue
    那么,有没有跳过单次循环的代码呢?
    ```python
    i=0
    while i < 5:
    i += 1
    if i == 3: #当i等于3时,跳出该次循环,执行下一次循环。
    continue
    print(i)
    #返回结果为:
    1
    2
    4
    5
    当i等于3时,跳出该次循环, 即本次不执行while循环语句里的print(i)语句。
    ```
    ### 3、break 和 continue 的区别
    ```python
    i = 0
    while i < 5:
    i += 1
    if i == 3:
    continue
    print(i)
    else: #当while条件返回False,或者说我们的循环正常结束了,则执行else语句,
    print('循环结束了')
    #返回结果为:
    1
    2
    4
    5
    循环结束了
    如果使用continue,能让循环跳过本次循环,让循环正常结束,如果使用的是break,则返回结果为:1 2 ,遇到break则跳出循环,不在执行循环语句了。
    ```

    ## 四、迭代循环
    给定一个list或tuple或str等类型,通过for循环来遍历这个list或tuple或str这些可迭代对象,这种遍历称为迭代。迭代是通过 for ... in 来完成的。
    ### 1、list
    ```python
    for i in ['A','B','C']:
    print(i)
    #返回结果为:
    A
    B
    C
    ```
    ### 2、tuple
    ```python
    for i in (1,'yan','yun'):
    print(i)
    #返回结果为:
    1
    yan
    yun
    ```
    ### 3、str
    ```python
    for i in 'abc':
    print(i)
    #返回结果为:
    a
    b
    c
    ```
    ### 4、dict

    迭代key:
    ```python
    d={'a':1,'b':2,'c':3}
    for key in d:
    print(key)
    #返回结果为:
    a
    b
    c
    ```
    迭代value:
    ```python
    for value in d.values():
    print(value)
    #返回结果为:
    1
    2
    3
    ```
    同时迭代key和value:
    ```python
    for k, v in d.items():
    print(k,v)
    #返回结果为:
    a 1
    b 2
    c 3
    ```
    如何判断一个对象是可迭代对象呢?
    通过collections模块的Iterable类型判断:
    ```python
    from collections import Iterable
    s=isinstance('abc', Iterable) # 判断str是否可迭代
    print(s)
    #返回结果为:True

    l=isinstance([1,2,3], Iterable) # list是否可迭代
    print(l)
    #返回结果为:True

    i=isinstance(123, Iterable) # 整数是否可迭代
    print(i)
    #返回结果为:False
    ```
    ## 五、end参数、range
    ### 1、end参数
    ```python
    print(1)
    print(2)
    #返回结果为:
    1
    2
    那么,end作用如下:
    print(1,end='*** ') # :换行字符串
    print(2)
    #返回结果为:
    1***
    2
    ```
    end可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符。
    ### 2、range函数
    range() 函数可创建一个整数列表,一般用在 for 循环中。

    函数语法是:range(start, stop[, step])

    参数说明:

    - start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
    - stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
    - step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
    ```python
    for i in range(1,10):
    print(i)
    #返回结果为:
    1
    2
    3
    4
    5
    6
    7
    8
    9

    ```

    ## 六、课题练习
    ### 1、打印9*9乘法口诀表
    ### 2、打印range(31)除带7或是7的倍数的数以外的所有数,并注明奇数还是偶数。

    如有问题请留言,谢谢!
  • 相关阅读:
    如何成为技术牛人
    重新思考关系型数据库的设计
    架构与管理相通
    传统企业和互联网企业的不同软件价值观
    数据仓库生命周期模型
    用面向对象的思维方式来设计数据库
    数据仓库的几类事实表
    转腾讯产品总监的一篇博文
    开源大数据处理平台简史
    [kuangbin带你飞]专题六 最小生成树 J
  • 原文地址:https://www.cnblogs.com/yunsi/p/13202022.html
Copyright © 2011-2022 走看看