zoukankan      html  css  js  c++  java
  • Python基础-文件操作&函数回顾总结

    文件操作回顾总结

    文件操作
        打开文件
            open('文件路径') 默认的打开方式('r'),默认的编码是('操作系统的默认编码')
            r w a r+ w+ a+ 以上6种加b  (r+ w+ a+ 尽量避免)(如果打开模式加b了,则不需要指定编码了;)
            编码 utf-8  gbk
        操作文件
            读
                read
                    不传参数 意味着读所有
                    如果是r方式打开的,参数指的是读多少个字符
                    传参,以rb方式打开,参数指的是读多少个字节
                readline
                    一行一行读,每次只读一行,不会自动停止
    
                for循环
                    一行一行读 从第一行开始,每次读一行,读到没有之后就停止
                readlines
            写
                write  写一行内容,以w形式打开写的是字符,以b模式打开写的是字节
        关闭文件
            f.close()
        with open() as f:
        修改文件
            c import os
            os.remove
            os.rename
    

      

    函数基础回顾总结

    # 函数
        # 定义
             # 关键字 def 函数名(形参,a):
             # 参数: 位置参数 关键字参数
                # 位置参数
                # *args 动态参数:接收在调用的时候传过来的所欲的所有按位置传的参数
                # 关键字参数 默认参数(如果不传会有一个默认参数,传了会覆盖默认的值)
                # **kwargs 动态参数:接收在调用的售后传过来的多余的所有按关键字传的参数
        # 返回值
            # return 停止一个程序的运行,返回参数
                # 没有返回值  默认返回 one
                # 有一个返回值
                # 返回多个值
        # 调用
            # 调用的关键字 函数名()
            # 传参数: 实参
                # 按照位置传
                # 按照关键字传
            # 接收返回值
                # 没有返回值 不接收
                # 有一个返回值 用一个变量接收
                # 有多个返回值
                    # 用一个变量接收 所有返回值都会被组织成一个元祖
                    # 用多个变量接收 有多少个返回值,就必须用多少个变量接收。
    
    
    # 函数是第一类对象的概念
        # 函数名 ---> 函数的内存地址
        # 函数名 可以作为容器类型的元素 函数的参数 函数的返回值 还能进行赋值
    
    
    # 闭包和装饰器
        # 闭包的定义: 内部函数引用外部函数的变量
        # 闭包的应用: 装饰器
    
    # 装饰器
        # 在原有的函数的前后增加功能,且不改变原函数的调用方式
    
    import time
    # 装饰器模板
    def timmer(f):
        def inner(*args,**kwargs):
            ret = f(*args,**kwargs)
            return ret
        return inner
    
    
    def timmer(f):
        def inner(*args,**kwargs):
            start_time = time.time()
            ret = f(*args,**kwargs)
            end_time= time.time()
            print(end_time - start_time)
            return ret
        return inner
    
    @timmer
    def func(a):
        print(a,'123')
        time.sleep(0.1)
        return True
    
    # func(1)
    
    # 装饰器进阶
    #  第一种情况  你可以确认你的装饰器是否生效
    

      

  • 相关阅读:
    指针数组与数组指针
    209. 长度最小的子数组
    面试题 05.08. 绘制直线(位运算)
    1160. 拼写单词
    88. 合并两个有序数组
    80. 删除排序数组中的重复项 II(On)
    python自定义异常和主动抛出异常
    类的构造方法1(类中的特殊方法)
    python之判断一个值是不是可以被调用
    主动调用其他类的成员(普通调用和super方法调用)
  • 原文地址:https://www.cnblogs.com/wangph/p/8931623.html
Copyright © 2011-2022 走看看