文件操作回顾总结
文件操作 打开文件 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) # 装饰器进阶 # 第一种情况 你可以确认你的装饰器是否生效