怎么在Python中对Excel进行读写

  介绍

这篇文章主要介绍了怎么在Python中对Excel进行读,写此处通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考价值,需要的朋友可以参考下:

Python是什么意思

Python是一种跨平台的,具有解释性,编译性,互动性和面向对象的脚本语言,其最初的设计是用于编写自动化脚本,随着版本的不断更新和新功能的添加,常用于用于开发独立的项目和大型项目。

<>强摘要:

<李>

利用xlrd读取Excel

<李>

利用xlwt写Excel

<李>

利用xlutils修改Excel

<>强利用xlrd读取Excel

先需要在命令行中pip安装xlrd;读取xls文件的流程为:

<强>加载文件→选中第几个表格→按先行后列的顺序读

<强>通用演示

import  xlrd   时间=filename “test.xls",,,,,,,, #文件路径   时间=wb  xlrd.open_workbook(文件名),,#加载这个xls文件   时间=sh  wb.sheet_by_index(0),,,,,, #选中第1个表格   rows =, sh.nrows ,,,,,,,,,,行号为该表格的行数   for 小姐:拷贝范围(1行):,,,,,,,#从第二行开始按行读取   title 才能=,sh.cell(我,0).value ,, #取第i + 1行,第1列的数据

<强> diy功能

根据列名获取内容的函数   def  get_col_index(名称、工作簿表):   for 才能小姐:拷贝范围(sheet.ncols):   ,,,name2 =, sheet.cell (0, 1) value   ,,,印刷(name2)   ,,,if  name2 ==,名称:   ,,,,return 我   return 才能;1   sheet.cell (get_col_index(“创建时间“))。值

<强>再拓展一点:

sh =, wb.sheet_by_name (sheetname),, #通过表格名称选中表格   print (wb.sheet_names()),,,,,,, #打印该xls文件的所有表格名称   sh.row (i),,,,,,,,,,,,,, #获得第i + 1行的所有数据组成的列表   时间=ncols  sh.ncols ,,,,,,,,, #获得该表格的所有列数   sh.row_values (rowx, start_colx=0,, end_colx=None),,, #获取第rowx + 1行的某几列的数据并组成的列表   sh.col (colx, start_rowx=0,, end_rowx=None), #获取第colx + 1列的某几行的数据并组成的列表   sh.cell (i, j) .value ,,,,,,,, #获取第i + 1行第j + 1列的数据   sh.cell (i, j) .ctype ,,,,,,,, #获取第i + 1行第j + 1列的数据类型

<强>注意日期类型

说起数据类型,补充一点,xlrd读取xls文件单元格的数据类型有五种,数字与类型的对应关系为:

ctype: 0空,1弦,2号,3日,4布尔,5误差

当单元格某个值为日期类型时,不加处理输出的是一个浮点数,此时需要判断ctype并进行一次转换:

得到xlrd  import  xldate_as_tuple   时间=cell  sh.cell .ctype(我,10)   if  cell.ctype ==, 3:   date 才能=,datetime (* xldate_as_tuple (cell.value, 0))

<>强利用xlwt写过量

先需要在命令行中pip安装xlwt;写xls文件的流程为:

<强>加载文件→选中第几个表格→按先行后列的顺序读

<强>通用演示

import  xlwt   时间=file  xlwt.Workbook(),,, #新建个文件   时间=sheet  file.add_sheet (& # 39; test_sheet0& # 39;, cell_overwrite_ok=True), #新建个表格,指定表名以及是否可覆盖写   sheet.write (i, j值),,,#在第i + 1行和第j + 1列写值(i, j从0开始)   file.save (“test_xls.xls"),, #保存成xls文件并指定文件名

<强>更多功能

#设置某列的宽度   sheet.col (0) .width =200   #写日期   时间=style  xlwt.XFStyle ()   时间=style.num_format_str  & # 39; D-MMM-YY& # 39;,   worksheet.write (0, 0, datetime.datetime.now(),风格)   #写公式   sheet.write (1, 1, xlwt.Formula(& # 39;和(A1, B1) & # 39;))   #合并单元格的写   sheet.write_merge (0, 0, 0,, 3,, & # 39; First 合并# 39;)   # ps:   # write_merge (x,, x  +, h,, y,, w  +, y,,,,时段),x和y表示当前行列,h和w为要合并的行数和列数

<强>更炫酷一点

既然是写,何不来点风格:

style =, xlwt.XFStyle ()   #修改字体:   时间=font  xlwt.Font(),,,,,,, #为样式创建字体   时间=font.name  & # 39; Times  New 罗马# 39;,,#字体名称   时间=font.bold  True ,,,,,,, #黑体   时间=font.colour_index  2,,,,,, #修改字的颜色   时间=font.underline  True ,,,,, #下划的线   时间=style.font  font ,,,,,,, #使用到样式中   sheet.write(0, 1,“编号“,风格)   #修改单元格背景色   时间=pattern  xlwt.Pattern (),   时间=pattern.pattern  xlwt.Pattern.SOLID_PATTERN    时间=pattern.pattern_fore_colour  5, #色号,可以在源代码中看到色号和颜色的对应关系   时间=style  xlwt.XFStyle ()   时间=style.pattern 模式   sheet.write(0、2、“编号“,风格)

怎么在Python中对Excel进行读写