python处理xls文件openpyxl基础操作
作者:Twilight
这篇文章主要为大家介绍了python处理xls文件openpyxl基础操作,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
python openpyxl处理xls
特别提醒:openpyxl不支持对xls文件的处理,且对原文件的样式保存非常不友好,如果你有保存原文件样式要求的话,建议使用xlwings替代openpyxl
基础操作
直接复制代码到编辑器,边看边运行,理解起来估计还快些~
from openpyxl import load_workbook from openpyxl import Workbook # =============== 第一部分,创建并写入数据 ===================== # 创建一个test.xlsx表,并写入数据 # wb = Workbook() # ws = wb.active # for row in range(1,4): # ws.append([row*10+1,row*10+2,row*10+3]) # wb.save('data/test.xlsx') # exit() # 导入一个已存在的test.xlsx load_wb = load_workbook('data/test.xlsx') # 打开活动的工作薄的活动工作簿,或者指定的工作簿 load_ws = load_wb.active # load_ws = load_wb.get_sheet_by_name("Sheet") # ============== 第二部分,插入、删除行和列 ======================== # 1-①在第二行前插入1行 # load_ws.insert_rows(2,1) # 1-②从第二行开始删除1行 # load_ws.delete_rows(2,1) # 2-①在第二列前插入2列 # load_ws.insert_cols(2,2) # 2-②从第二列开始删除1列 # load_ws.delete_cols(2,1) # 获取总行数(存在数据) # load_wb.save('data/test.xlsx') # rows = load_ws.max_row # cols = load_ws.max_column # print('该表格总共有:'+str(rows)+' 行') # print('该表格总共有:'+str(cols)+' 列') # exit() # ============== 第三部分,获取单元格的值 ======================== # 获第三行第一列的值,两种方法都行 # 方法一,根据单元格名称获取 # v = load_ws['A3'].value # 方法二,根据横纵坐标值来获取 # v = load_ws.cell(3,1).value # print(v) # 获取全部的单元格 # rows = load_ws.rows # for row in rows: # for cell in row: # if(cell.value==21): # print(dir(cell)) # #可用属性 col_idx、column、row、value # print(cell.col_idx) # print(cell.column) # print(cell.row) # ============== 第三部分,修改指定单元格的值 ======================== # load_ws['A2'] = 'xx' # load_wb.save('data/test.xlsx') # exit() # ============== 第四部分,合并单元格 ======================== # load_ws.merge_cells('A2:B2') # load_wb.save('data/test.xlsx') # exit() # ============== 第五部分,设置样式(文字居左) ======================== # from openpyxl.styles import Alignment # # 水平居右,垂直居中,自动换行 # load_ws['A2'].alignment = Alignment(horizontal='right',vertical='center',wrap_text=True) # # 自动换行 # load_ws['G1'].alignment = Alignment(wrap_text=True) # # from openpyxl.styles import Font # # 设置字体为“宋体”,大小为11,bold为加粗,italic为斜体,strike为删除线,颜色为黑色 # font = Font(u'宋体',size = 11,bold=True,italic=True,strike=True,color='000000') # load_ws['A1'].font = font # from openpyxl.styles import PatternFill # # 设置背景色为 #1874CD # fill = PatternFill("solid", fgColor="1874CD") # load_ws['C3'].fill = fill # 第2行行高 load_ws.row_dimensions[2].height = 40 # C列列宽 load_ws.column_dimensions['C'].width = 30 load_wb.save('data/test.xlsx') exit() # ============== 第六部分,其它 ======================== # # 打印设置 # load_ws.print_options.horizontalCentered = True # load_ws.print_options.verticalCentered = True # load_ws.print_area = 'A1:I5' # load_wb.save('data/test.xlsx') from openpyxl.utils import get_column_letter, column_index_from_string # 根据列的数字返回字母 print(get_column_letter(2)) # B # 根据字母返回列的数字 print(column_index_from_string('D')) # 4
以上就是python处理xls文件openpyxl基础操作的详细内容,更多关于python openpyxl处理xls的资料请关注脚本之家其它相关文章!