• Python复习知识点(三)


    • 循环结构
    一,while循环
            使用方式和之前学的一致,这里只说新加入的
            while...else    当while语句条件为false时候执行else    (else和while平级)
     
    二,for循环
            和之前的有差别,它支持序列和迭代器作为参数
            简单用法:
     新增的for-else语句
                和while-else用法一致    for -  else中 for 和else是平级关系,在for循环结束后,会执行else语句
    • 函数定义
                def关键字开头,后面接函数名,函数名后面接()参数列表。还有冒号起始
                函数体要缩进,函数可以不写return,不写默认返回None,函数返回值可以是列表
            这里对python函数参数的问题分析分析:
            首先要明白python中,类型属于对象,而变量是没有类型的。对于这句话的理解看一下代码
            a= [ 1 , 2 , 3 ]
            a= " Runoob "
            以上代码中,[1,2,3]是List类型,而" Runoob "是string类型。变量a是没有类型的,她仅仅是一个对象的引用
            它可以是list,也可以是string
     
            明白了上面的理论,再回过头来看函数参数的问题,传参的类型可以是可变类型,也可以是不可变类型
            可变类型:列表,字典
            不可变类型:string  tuples  number都是不可变的
             那具体什么叫可变,什么叫不可变。这就和上面提到的类型属于对象,变量没有类型 有关系
            不可变类型:          
                      例如 a=10,    然后我们在赋值  a=5    这里实际是新生成了一个对象 10(int类型),然后我们让a去指向了它
                      我们并没有改变a的值,只是让他重新指向了一个值,之前的5被丢弃了
             可变类型:
                        list=[1,2,3,4] 我们现赋值list[2]=10      这里将第三个元素的值改变了,但是!list本身并没有动,它只是内容的一部分被修改了
      
              综上理论,我们可以得出:我们在函数传参的时候
              1.    如果传入的是不可变类型(类似于c++的值传递),我们传递进去后,函数内无论怎么去改变这个参数的值,都不会影响原有的参数  
                                def   fun ( a ) :
                                         a=10
                                b=2
                                fun(2)
                                print ( b )            #这里输出的还是2,我们并没有去改变b        (这是传入不可变类型的对象)
     
                2.    如果传入可变对象的时候,就相当于我们在传c++中的引用传递,我们如果穿list 或者字典。在函数里面去修改值,原来的参数也会随之发生改变
     
            匿名函数
        我们使用lambda来创建匿名函数,它只是一个表达式,我们可以在调用的时候给他传参,用法如下
    • 全局局部变量
            分三个例子说明变量作用域问题:
        例1:

     例2:global声明全局变量

    例3:nonlocal声明嵌套函数内部修改局部变量(python3中适用)

    • 模块
        模块是一个python文件,以py结尾
        导入模块的方式有三种:
        1.    import + 模块名
               我们在使用的时候就可以使用 模块名 . 函数名
                一个模块导入只有一次,无论执行多少次import
        2.    from 模块名 import 对象名
            这个声明是将部分我们需要导入的函数或者变量导入进来
        3.    from 模块名 import *
            将一个模块所有内容导入进来
     
    • 异常处理
         我们可以使用try+except来捕获异常
        我们只需在try中执行我们需要保护的代码,在except中去测试是否有误,如果有误我们也不会终端我们的代码
    如果在except中不写错误类型,我们就默认所有错误类型
        try-finally 机制,为finally里面的代码块无论如何都会执行,哪怕前面有return 退出函数,他也会执行完finally代码后,再去return   
     
        我们也可以自己去主动抛出异常,让except捕获:
    Python中特殊语法:
    闭包:    在函数嵌套中使用
    filter函数用于过滤序列,过滤掉不符合条件的元素
        filter ( function, 可迭代对象)        其中函数为判断函数,将结果为真的组成一个序列返回

    reduce函数,用于对参数序列中元素进行累积(这里不能理解为累计相加!,用传给reduce中的两个元素进行操作,得到*的结果在于第三个数据给函数运算,最后得到一个结果

    map函数,会对指定序列进行函数操作,并返回一个列表

    • Python中时间日期time模块,random模块
        这里简单的知道
    显示本地相应时间:
        import    time                导入time模块
        print(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime() ))

     

    • 文件操作
    文件操作和c语言的文件操作基本一致
    我们进行文件操作必须先的到一个文件对象,才能去进行相关的操作
        先来看open函数

  • 相关阅读:
    selenium自动化测试资源整理
    python获取目录下文件夹名称
    Appium-测试失败后屏幕截图的
    appium 多个设备同时执行
    七 Appium常用方法介绍
    六 APPIUM Android 定位方式
    Python运维开发基础08-文件基础
    Python运维开发基础09-函数基础
    Python运维开发基础06-语法基础
    Python运维开发基础07-文件基础
  • 原文地址:https://www.cnblogs.com/Tempt/p/9987711.html
Copyright © 2020-2023  润新知