学习总结(二十二)
1.configparser模块
configparser模块:是用于解析配置文件的模块
何为配置文件:
1)configparser模块常用方法
ConfigParser():解析对象
read("地址",encoding="utf-8"): 读取指定的配置文件
sections("分区名"):获取所有分区的名称
add_section("分区名"):添加一个分区
options("op分区"): 获取op分区下所有的名字
getint("分区名","key") getfloat("分区名","key") getboolean("分区名","key") :进行类型转换
set("分区名","key","值") : 设置值
get("分区名","key") : 获取值
has_section("分区名") : 判断分区是否存在
has_option("分区名","key"): 判断分区内的key是否存在
remove_section('分区名') : 删除分区
remove_option('分区名','key') : 删除分区内指定的key和value
write(open('地址','w')) :写入文件中
xlrd模块:是python中一个第三方的用于读取excle表格的模块
1)xlrd模块常用模块
work_book = xlrd.open_workbook("/Users/jerry/Desktop/公司机密数据.xlsx") 读取文件
work_book.sheet_names() 获取所有所有表格名称
sheet_by_index(1) 获取文件中索引, 第二个从0开始
sheet.name :表格名称
sheet_names(): 获取所有表格名称
sheet.nrows :获取行数
sheet.ncols : 获取列数
sheet.row(6) 获取第6行内全部内容
sheet.row_slice(6,start_colx=3) :取出第6行的内容包含数据类型 从第3列开始获取
sheet.row_slice(6,start_colx=4,end_colx=5) :取出第6行的内容包含数据类型 从第3列开始获取
sheet.cell(0,0).value :取值
sheet.cell_value(2,0): 直接取值
sheet.cell(0,0).ctype 取类型
sheet.row(0)[0] :先取行再取单元格
sheet.col(0) :第0列所有数据
xlrd.cellname(2,1) 单元格位置转换
时间类型转换
sheet.cell(6,5).value
xlrd.xldate_as_datetime(sheet.cell(6,5).value,1)
创建工作簿
add_sheet("员工信息数据") 创建一个表
font =xlwt.Font():创建一个字体对象
font.name = "Times New Roman" # 字体名称
font.bold = True # 加粗
font.italic = True # 斜体
font.underline = True # 下划线
xlwt.XFStyle() 创建一个样式对象
写入标题
for k in keys:
sheet.write(0,keys.index(k),k,style)
写入数据
for i in infos:
for k in keys:
sheet.write(1 + infos.index(i),keys.index(k),label = i[k])
保存至文件
work.save("test.xls")
4.subeprocess模块
子进程
什么是进程: 指的是一个正在运行中的程序
什么是子进程: 指的是由另个一进程开启的进程 a在运行过程中 ,开启了b,b就是a的子进程
为什么要开启子进程
当一个程序在运行过程中有一个任务,自己做不了或是不想做 就可以开启另一个进程来帮助其完成任务
例如 qq中收到一个链接 点击链接 就开启了; 浏览器就是qq的子进程
subeprocess常用方法
subprocess.PIPE : 就是指定了一个输出管道
subprocess.Popen("dir",shell=True,stdout=subprocess.PIPE) :执行dir命令
reuslt = p.stdout.read().decode("GBK") 从管道中读取出执行结果