介绍
这篇文章主要介绍了怎么在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进行读写