电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Python獲取excel內容及相關操作代碼實例

瀏覽:16日期:2022-07-14 15:34:13

Python沒有自帶openyxl,需要安裝: pip install openyxl

打開excel文檔: openyxl.load_workbook(excel地址) - 打開現有excel文件

openyxl.Workbook() - 新建一個excel文件

返回一個工作博對象

import openpyxlwb = openpyxl.load_workbook('test.xlsx')print(type(wb)) # <class ’openpyxl.workbook.workbook.Workbook’>

openpyxl.load_workbook()函數,傳入一個存在的excel文件名稱/excel文件名稱+文件路徑,返回一個workbook對象。

從workbook對象中獲取工作表

import openpyxlwb = openpyxl.load_workbook('test.xlsx')# print(type(wb)) # <class ’openpyxl.workbook.workbook.Workbook’># 工作簿對象.sheetnames - 獲取當前工作簿中所有表的名字# print(wb.sheetnames) [’Sheet1’, ’Sheet2’, ’Sheet3’]# 工作簿對象.active - 獲取當前活動表對應的Worksheet對象# print(wb.active) <Worksheet 'Sheet1'># 工作簿對象[表名] - 根據表名獲取指定表對象# print(wb['Sheet2']) <Worksheet 'Sheet2'># 表對象.title - 獲取表對象的表名ws = wb['Sheet1']# print(ws.title) Sheet1# 表對象.max_row - 獲取表中最多有多少行# print(ws.max_row) 15# 表對象.max_column - 獲取表有多少列print(ws.max_column) # 3

從表中取得單元格

import openpyxlwb = openpyxl.load_workbook('test.xlsx')ws = wb['Sheet1']# 表對象[’列號行號’] - 獲取指定列的指定行對應的單元格對象(單元格對象是 Cell 類的對象,列號是從A開始,行號是從1開始)a = ws['A1']# print(a) # <Cell ’Sheet1’.A1># 單元格對象.value - 獲取單元格中的內容print(a.value)# 單元格對象.row - 獲取行號(數字1開始)print(a.row)# 單元格對象.column - 獲取列號(數字1開始)print(a.column)# 單元格對象.coordinate - 獲取位置(包括行號和列號)print(a.coordinate)# 表對象.iter_rows() - 一行一行的取row_s = ws.iter_rows()for a in row_s: for i in a: print(i.value)# 表對象.iter_cols() - 列表一列的取col_s = ws.iter_cols()for c in col_s: for j in c: print(j.value)

用字母來指定列時會出現列Z之后用兩個字母代替,可以調用表的cell()方法,傳入整數作為行數和列數,第一行或者第一列的整數是1,而不是0

表對象.cell(行號,列號)

import openpyxlwb = openpyxl.load_workbook('test.xlsx')ws = wb['Sheet1']# 獲取第二列的所有內容max_row = ws.max_rowfor row in range(1, max_row + 1): cell = ws.cell(row, 2) print(cell.value)

從表中取得列和行

取電子表格中一行、一列或一個矩形區域中的所有 Cell 對象

表對象[位置1:位置2] 獲取指定范圍內的所有單元格

import openpyxlfrom openpyxl.utils import get_column_letter, column_index_from_stringwb = openpyxl.load_workbook('test.xlsx')ws = wb['Sheet1']max_row = ws.max_rowcolumn = get_column_letter(max_row)# 獲取第一列所有單元格對象row2 = ws['A1':f'{column}1']ss = [(cell.coordinate, cell.value) for cells in row2 for cell in cells]print(ss)

import openpyxlfrom openpyxl.utils import get_column_letter, column_index_from_stringwb = openpyxl.load_workbook('test.xlsx')ws = wb['Sheet1']max_cols = ws.max_columncolumn = get_column_letter(max_cols)# 獲取第一片區域所有單元格對象row2 = ws['A1':f'{column}3']ss = [(cell.coordinate, cell.value) for cells in row2 for cell in cells]print(ss)

創建并保存Excel文檔

openpyxl.Workbook() - 創建空的Excel文件對應的工作薄對象

工作薄對象.save(文件路徑) - 保存文件

import openpyxlwb = openpyxl.load_workbook('test.xlsx')ws = wb['Sheet1']# 修改sheet的名稱ws.title = 'hello_world'wb.save('test.xlsx')

創建和刪除sheet

工作薄對象.create_sheet(title, index) - 在指定工作薄中的指定位置(默認是最后)創建指定名字的表,并返回表對象

工作薄對象.remove(表對象) - 刪除工作薄中的指定表

import openpyxlwb = openpyxl.load_workbook('test.xlsx')wb.create_sheet()print(wb.sheetnames)wb.create_sheet('test1')print(wb.sheetnames)wb.create_sheet('test2', index=0)print(wb.sheetnames)wb.remove(wb['test2'])print(wb.sheetnames)wb.save('test.xlsx')

將數據寫入表格中

import openpyxlwb = openpyxl.load_workbook('test.xlsx')ws = wb['hello_world']# 方式一ws['A4'] = 'hello_world'# 方式二ws.cell(4, 5).value = 'hello_test'wb.save('test.xlsx')

設置單元格樣式

用表格展示數據的時候,有的時候需要對不同的數據以不同的風格進行展示從而達到分區或者強調的作用。

import openpyxlfrom openpyxl.styles import Font, PatternFill, Border, Side, Alignment# 1.打開工作薄wb = openpyxl.load_workbook('test.xlsx')ws = wb['hello_world']# 2.設置單元格字體樣式'''Font( name=None, # 字體名,可以用字體名字的字符串 strike=None, # 刪除線,True/False color=None, # 文字顏色 size=None, # 字號 bold=None, # 加粗, True/False italic=None, # 傾斜,Tue/False underline=None # 下劃線, ’singleAccounting’, ’double’, ’single’, ’doubleAccounting’)'''# 1:創建字體對象font1 = Font( size=20, italic=True, color='ff0000', bold=True, strike=True)# 2:設置指定單元格的字體# 單元格對象.font = 字體對象ws['B2'].font = font1# 3:設置單元格填充樣式'''PatternFill( fill_type=None, # 設置填充樣式: ’darkGrid’, ’darkTrellis’, ’darkHorizontal’, ’darkGray’, ’lightDown’, ’lightGray’, ’solid’, ’lightGrid’, ’gray125’, ’lightHorizontal’, ’lightTrellis’, ’darkDown’, ’mediumGray’, ’gray0625’, ’darkUp’, ’darkVertical’, ’lightVertical’, ’lightUp’ start_color=None # 設置填充顏色)'''fill = PatternFill( fill_type='solid', start_color='ffff00')ws['B2'].fill = fill# 設置單元格對齊樣式al = Alignment( horizontal='right', # 水平向方: center 靠左:left 靠右: right vertical='top' # 垂直方向: center, top, bottom)ws['B2'].alignment = al# 設置邊框樣式# 設置邊對象(四個邊可以是一樣的也可以不同,如果不同就創建多個Side對象)side = Side(border_style='thin', color='0000ff')# 設置邊框對象(left、right、top、bottom表示的是邊框的四個邊,這兒四個邊使用的是一個邊對象)db = Border(left=side, right=side, top=side, bottom=side)ws['B2'].border = db# 設置單元格的寬度和高度# 設置指定列的寬度ws.column_dimensions['A'].width = 20# 設置指定行的高度ws.row_dimensions[1].height = 45wb.save('test.xlsx')

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: python
相關文章:
主站蜘蛛池模板: 集装袋吨袋生产厂家-噸袋廠傢-塑料编织袋-纸塑复合袋-二手吨袋-太空袋-曹县建烨包装 | 快速门厂家批发_PVC快速卷帘门_高速门_高速卷帘门-广州万盛门业 快干水泥|桥梁伸缩缝止水胶|伸缩缝装置生产厂家-广东广航交通科技有限公司 | 锥形螺带干燥机(新型耙式干燥机)百科-常州丰能干燥工程 | 礼仪庆典公司,礼仪策划公司,庆典公司,演出公司,演艺公司,年会酒会,生日寿宴,动工仪式,开工仪式,奠基典礼,商务会议,竣工落成,乔迁揭牌,签约启动-东莞市开门红文化传媒有限公司 | 西安烟道厂家_排气道厂家_包立管厂家「陕西西安」推荐西安天宇烟道 | 礼仪庆典公司,礼仪策划公司,庆典公司,演出公司,演艺公司,年会酒会,生日寿宴,动工仪式,开工仪式,奠基典礼,商务会议,竣工落成,乔迁揭牌,签约启动-东莞市开门红文化传媒有限公司 | 烟台条码打印机_烟台条码扫描器_烟台碳带_烟台数据采集终端_烟台斑马打印机-金鹏电子-金鹏电子 | 南汇8424西瓜_南汇玉菇甜瓜-南汇水蜜桃价格 | LZ-373测厚仪-华瑞VOC气体检测仪-个人有毒气体检测仪-厂家-深圳市深博瑞仪器仪表有限公司 | 不锈钢电动球阀_气动高压闸阀_旋塞疏水调节阀_全立阀门-来自温州工业阀门巨头企业 | 医养体检包_公卫随访箱_慢病随访包_家签随访包_随访一体机-济南易享医疗科技有限公司 | 编织人生 - 权威手工编织网站,编织爱好者学习毛衣编织的门户网站,织毛衣就上编织人生网-编织人生 | 武汉天安盾电子设备有限公司 - 安盾安检,武汉安检门,武汉安检机,武汉金属探测器,武汉测温安检门,武汉X光行李安检机,武汉防爆罐,武汉车底安全检查,武汉液体探测仪,武汉安检防爆设备 | RFID电子标签厂家-上海尼太普电子有限公司 | 亚洲工业智能制造领域专业门户网站 - 亚洲自动化与机器人网 | 仿清水混凝土_清水混凝土装修_施工_修饰_保护剂_修补_清水混凝土修复-德州忠岭建筑装饰工程 | 空心明胶胶囊|植物胶囊|清真胶囊|浙江绿键胶囊有限公司欢迎您! | 大白菜官网,大白菜winpe,大白菜U盘装系统, u盘启动盘制作工具 | 玻璃瓶厂家_酱菜瓶厂家_饮料瓶厂家_酒瓶厂家_玻璃杯厂家_徐州东明玻璃制品有限公司 | 球形钽粉_球形钨粉_纳米粉末_难熔金属粉末-广东银纳官网 | PCB设计,PCB抄板,电路板打样,PCBA加工-深圳市宏力捷电子有限公司 | 科研ELISA试剂盒,酶联免疫检测试剂盒,昆虫_植物ELISA酶免试剂盒-上海仁捷生物科技有限公司 | 卫生纸复卷机|抽纸机|卫生纸加工设备|做卫生纸机器|小型卫生纸加工需要什么设备|卫生纸机器设备多少钱一台|许昌恒源纸品机械有限公司 | 小程序开发公司_APP开发多少钱_软件开发定制_微信小程序制作_客户销售管理软件-济南小溪畅流网络科技有限公司 | HDPE土工膜,复合土工膜,防渗膜价格,土工膜厂家-山东新路通工程材料有限公司 | 微学堂-电动能源汽车评测_电动车性能分享网 | 预制围墙_工程预制围墙_天津市瑞通建筑材料有限公司 | 期货软件-专业期货分析软件下载-云智赢 | 考勤系统_人事考勤管理系统_本地部署BS考勤系统_考勤软件_天时考勤管理专家 | 杭州双螺杆挤出机-百科 | 培训中心-翰香原香酥板栗饼加盟店总部-正宗板栗酥饼技术 | 地图标注|微信高德百度地图标注|地图标记-做地图[ZuoMap.com] | 山楂片_雪花_迷你山楂片_山楂条饼厂家-青州市丰源食品厂 | 石膏基自流平砂浆厂家-高强石膏基保温隔声自流平-轻质抹灰石膏粉砂浆批发-永康市汇利建设有限公司 | TTCMS自助建站_网站建设_自助建站_免费网站_免费建站_天天向上旗下品牌 | 膜结构停车棚-自行车棚-膜结构汽车棚加工安装厂家幸福膜结构 | 理化生实验室设备,吊装实验室设备,顶装实验室设备,实验室成套设备厂家,校园功能室设备,智慧书法教室方案 - 东莞市惠森教学设备有限公司 | 球磨机 选矿球磨机 棒磨机 浮选机 分级机 选矿设备厂家 | 全温恒温摇床-水浴气浴恒温摇床-光照恒温培养摇床-常州金坛精达仪器制造有限公司 | 合肥网带炉_安徽箱式炉_钟罩炉-合肥品炙装备科技有限公司 | 视频教程导航网_视频教程之家_视频教程大全_最新视频教程分享发布平台 |