首页 > 编程语言 > 详细

(12)-Python3之--openpyxl模块

时间:2020-03-02 11:17:38      阅读:70      评论:0      收藏:0      [点我收藏+]

1.安装

pip install openpyxl

2.Excel操作的流程

1、打开excel,进入工作薄 workbook
2、选择表单 Sheet

3、单元格  Cell
4、读写操作

3.Excel操作

首先准备已经存在的Excel表格。

技术分享图片

3.1获取单元格的值

from openpyxl import load_workbook
# 选择Excel表
wb = load_workbook(rE:\Users\Web_Core\xlstest.xlsx)
# 选择表单
sh = wb[Sheet1]
# 获取单元格的值,从1开始。
print(sh.cell(1,1).value)

结果:
A1

3.2写入单元格的值

from openpyxl import load_workbook
# 选择Excel表
wb = load_workbook(rE:\Users\Web_Core\xlstest.xlsx)
# 选择表单
sh = wb[Sheet1]

# 写单元格的值
sh.cell(6,1).value = "二狗"
# 保存写入的数据 - 整个工作薄
wb.save(rE:\Users\Web_Core\xlstest.xlsx)

结果:

技术分享图片

 

 3.3获取总行数、总列数

from openpyxl import load_workbook
# 选择Excel表
wb = load_workbook(rE:\Users\Web_Core\xlstest.xlsx)
# 选择表单
sh = wb[Sheet1]

rows = sh.max_row   # 总行数
print("总行数为:" + str(rows))
colums = sh.max_column  # 总列数
print("总列数为:" + str(colums))

结果:
总行数为:10
总列数为:4

3.4读取所有的数据

from openpyxl import load_workbook

# 定义一个获取所有数据的函数
def read_all_data():
    wb = load_workbook(r"E:\Users\Web_Core\xlstest.xlsx")  # 打开Excel
    sh = wb[Sheet1]  # 获取表单
    cases = []  # 所有的cases用列表存放
    max_row = sh.max_row  # 获取最大行
    max_column = sh.max_column  # 获取最大列

   # 通过双循环获取所有数据
    for r in range(2, max_row + 1):  # 遍历行
        case = {}
        for j in range(1, max_column + 1):
            key = sh.cell(row=1, column=j).value  # 遍历列
            case[key] = sh.cell(row=r, column=j).value
        cases.append(case)  # 将一行数据放到列表

    wb.save(r"E:\Users\Web_Core\xlstest.xlsx")
    wb.close()
    return cases

# 调用函数,打印数据
all_data = read_all_data()
print(all_data)

结果:
[{D1: D2, C1: C2, B1: B2, A1: A2}, {D1: D3, C1: C3, B1: B3, A1: A3},
{D1: D4, C1: C4, B1: B4, A1: A4}, {D1: D5, C1: C5, B1: B5, A1: A5},
{D1: D6, C1: C6, B1: B6, A1: 二狗}, {D1: D7, C1: C7, B1: B7, A1: A7},
{D1: D8, C1: C8, B1: B8, A1: A8}, {D1: D9, C1: C9, B1: B9, A1: A9},
{D1: D10, C1: C10, B1: B10, A1: A10}]

 

(12)-Python3之--openpyxl模块

原文:https://www.cnblogs.com/renshengruxi/p/12300458.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!