python常⽤的库和模块
os python与操作系统进⾏交互sys 与python解释器相关的变量和⽅法处理⽂件 json、csv时间 time、datetime、date随机数 random正则表达式 re
读写⽂件 openpyxl (⽤于excel⽂件读写)、pandas 、xlrd(⽤于excel⽂件读取)、xlsxwrier(excel⽂件写⼊)、xpath(xml对象解析和格式化处理)
⽹络抓取和请求 requests、urllib(python⾃带的库)、urllib2、Beautiful Soup(⽹页数据解析和格式化处理⼯具,通常配合urllib、urllib2使⽤)连接数据库 cx_oracle、pymysql
测试框架 pytest(python的⼀种单元测试框架)、unittest⾃动化测试⼯具 selenium
python内置函数
abs() 返回绝对值min() max()
字符类型 int() bool() list() dict() tuple() float() len() type()
set() 创建⼀个⽆序不重复数组集round() 返回浮点数的四舍五⼊值reverse() 反向列表中元素sorted() 可迭代对象排序操作range() 创建⼀个整数列表open() 打开⽂件
列表和元组的区别
1. 列表是动态数组,它们可变⽽且可以重设长度,改变其内部元素的个数2. 元组是静态数组,它们不可变,且其内部数据⼀旦创建便⽆法改变
3. 元组缓存于python运⾏时环境,意味着每次使⽤元组时⽆需访问内核去分配内存
python装饰器和闭包
闭包就是⼀个函数定义中引⼊了函数外定义的表量,并且该函数可以在其定义环境外被执⾏装饰器是闭包的特例,外部函数传的参数是函数名
python深拷贝和浅拷贝
深拷贝和浅拷贝最根本的区别在于是否真正获取⼀个对象的复制实体,⽽不是引⽤
深拷贝(deepcopy)是增加了⼀个指针并且申请了⼀个新的内存,使这个增加的指针指向这个新的内存
浅拷贝(shallowcopy)只是增加了⼀个指针指向已存在的内存地址
使⽤深拷贝时,释放内存的时候不会因为出现浅拷贝时释放同⼀个内存的错误
浅复制:仅仅是指向被复制的内存地址,如果原地址发⽣改变,那么浅复制出来的对象也会相应的改变深复制:在计算机中开辟⼀块新的内存地址⽤于存放复制的对象深拷贝和浅拷贝的实际场景?
⽐如想对某个数组或对象的值进⾏修改,但是⼜要暴露原来数组或对象的值不被修改,此时就可以⽤深拷贝来创建对象,从⽽达到操作(修改)新的数组或对象时,保留原来的数组和对象
因篇幅问题不能全部显示,请点此查看更多更全内容