zoukankan      html  css  js  c++  java
  • 2.2、Python程序控制结构(0530)

    条件测试:

    1、if 条件测试表达式

    python的比较操作

    1、所有的python对象都支持比较操作

    • 可用于测试相等性、相对大小等;
    • 如果是符合对象,python会检查其所有部分,包括自动遍历各级嵌套对象,直到可以得出最终结果

    2、测试操作符

    • “==” 操作符测试值的相等性
    • “is” 表达式测试对象的一致性

    3、python的比较操作

    • 数字:通过相对大小进行比较
    • 字符串:按照字典次序逐字符进行比较
    • 列表和元组:自左至右比较各部分内容
    • 字典:对排序之后的(键、值)列表进行比较

    4、python中真和假的含义

    • 非零数字为真,否则为假
    • 非空对象为真,否则为假
    • none则始终为假

     

    字符串:按照字典次序逐字符进行比较(按照字母表或ASCII码)

     

    2、python中的真假:

    • 任何非 0 数字和非空对象都为真
    • 数字0、空对象和特殊对象None都为假
    • 比较和相等测试会递归地应用于数据结构中
    • 返回值为True或False

     

    3、组合条件测试:

    • X and Y:与运算
    • X or Y :或运算
    • not x:非运算

    if测试的语法结构

    if boolean_expression1:

        suite1

    elif boolean_expression2:

        suite2

    ...

    else:

        esle_suite

     

    elif语句是可选的

    仅用于占位,而后再填充相关语句时,可以使用pass

    A = X if Y else Z    //如果Y条件满足,那么A=X,否则A=Z,三元表达式

        if Y:     

            A=X

        else:

            A=Z


    while和for循环

    循环机制及应用场景

    1、while循环

    • 用于编写通用迭代结构(非遍历式的)
    • 顶端测试为真即会执行循环体,并会重复多次测试直到为假后执行循环后的其他语句

    2、for循环

    • 一个通用的序列迭代器,用于遍历任何有序的序列对象内的元素
    • 可用于字符串、元组、列表和其它的内置可迭代对象,以及通过类所创建的新对象

    3、python也提供了一些能够进行隐形迭代的工具

    • in 成员关系测试
    • 列表解析
    • map、reduce和filter函数

    while循环

    1、语法格式

    else 分支为可选部分

    只要boolean_expression的结果为true,循环就会执行;

    boolean_expression的结果为false时终止循环,此时如果有else分支,则会执行

    2、语法格式

              

                      


    while语法格式: 

    while bool_expression:

    while_suite

    else:

    else_suite

     

    while循环语法格式扩展 

     

     

    break:跳出最内层的循环

    continue:跳到所处的最近层循环的开始处

    pass:点位语句

    else代码库:循环正常终止才会执行,如果循环终止是由break跳出导致的,则else不会执行

     


    练习题1:逐一显示指定列表中的所有元素;

              

                

          简化:

    练习4:创建一个包含了100以内所有奇数的列表;                                           练习5:逆序显示列表中的所有元素;

                      

    练习6:列表l1 = [0,1,2,3,4,5,6],列表l2 = ['sun','mon','tue','wed','thu','fri','sat'],以第一个列表中的元素为键,以第二个列表中的元素为值生成字典d1;

          

    while true:死循环


    for循环

    1、语法格式

    通常,expression或是一个单独的变量,或是一个变量序列,一般以元组的形式给出

    如果以元组或列表用于expression,则其中的每个数据项都会拆分到表达式的项,例如

    T=[(1,2),(3,4),(5,6),(7,8)]

    for (a,b) in T:

    print a,b


    for循环形式扩展

         

      


    编写循环的技巧

    1、for循环比while循环执行的速度快

    2、python提供了两个内置函数,用于在for循环中定制特殊的循环

    range或xrange

    range:一次性的返回连续的整数列表

    xrange:一次产生一个数据元素,相较于range更节约空间

    zip

    返回并行的元素元组的列表,常用于在for循环中变量数个序列


    range函数

    1、非完备遍历

    用于每隔一定的个数元挑出一个元素

    2、修改列表


    并行遍历

    1、zip

    • 取得一个或多个序列为参数,将给定序列中的并排的元素配成元组,返回这些元组的列表
    • 当参数长度不同时,zip会以最短序列的长度为准
    • 可在for循环中用于实现并行迭代

         

    • zip也用于动态构造字典

     

     


    产生偏移和元素

    enumerate

    • range 可在非完备遍历中用于生成索引偏移,而非偏移处的元素
    • 如果同时需要偏移索引和偏移元素,则可以使用 enumerate() 函数
    • 此内置函数返回一个生成器对象

       

    练习题1:逐一显示指定列表中的所有元素;

           

              

     

     

  • 相关阅读:
    Django and Djangorestframework
    安装socketio出现module 'importlib._bootstrap' has no attribute 'SourceFileLoader' 错误
    pycharm 里运行 django 工程 You must either define the environment variable DJANGO_SETTINGS_MODULE 错误
    linux 安装python3
    iOS 10.3下解决Fiddler代理抓包ssl证书信任问题
    Android 7.0 fiddler代理抓不到https请求的解决办法
    python base64 decode incorrect padding错误解决方法
    Fiddler做代理服务器时添加X-Forwarder-For转发真实客户端ip
    python安装pbkdf2 遇到错误TypeError: __call__() takes exactly 2 arguments (1 given)
    soapUI通过groovy脚本设置超时时间
  • 原文地址:https://www.cnblogs.com/hanshanxiaoheshang/p/9346626.html
Copyright © 2011-2022 走看看