python办公自动化(5)利用openpyxl进行的基本操作

五、由于昨天上了一天的课,昨晚上没有搞这个,今天来补一补。(!注意这一张需要用到字典,元组的知识)

从这章开始一般要用到openpyxl

如果当写到import openpyxl 时候如果出现报错,那么需要先用到pip install openpyxl这个语句
这个是程序中的分量.xlsx
在这里插入图片描述
一下进行代码分析

import openpyxl#首先导入openpyxl包
def open():#定义函数(打开工作簿的三种方式)
    from openpyxl import load_workbook#这个类似于xlrd里面的打开是一样的
    wb=load_workbook("分量.xlsx")#这里面选择名字用的是load workbook
    sh1=wb.active#这个默认选择的一个工作簿
    sh2=wb['分量']#这个是直接根据名字找,下面也是
    sh3=wb.get_sheet_by_name('分量')
    print(sh1 is sh2 is sh3)#三种方式看是不是一样的,这个值返回是个true,
    #说明一样
def getsheet():#得到工作簿的名字
    from openpyxl import load_workbook
    wb=load_workbook('分量.xlsx')
    print(wb.sheetnames)#第一种方法输出工作簿的名字,这个是names会一下输出所有的名字
    for sh in wb:#这个利用循环结构,一下下输出
        print(sh.title)#第二种方法输出工作簿的名字
def getonevalue():#得到一个单元格的值
    from openpyxl import load_workbook
    wb = load_workbook('分量.xlsx')
    sh1=wb.active#默认激活第一个工作簿
    print(sh1.cell(1,2).value)#这也是常见的两种输出单元格的小小方式
    #(用的是坐标输出单元格的值)
    print(sh1['c1'].value)#直接用单元格的位置
def getmanyvalue():#得到多个单元格的值(利用切片)
    from openpyxl import load_workbook
    wb = load_workbook('分量.xlsx')
    sh1 = wb.active#激活工作簿
    cell1=sh1['c1':'d2']#相当于你鼠标画了一个格子,将从c1到d2框选住,如果是2*2就类似二维数组,如果再多则可以利用cell1[0][0]这种方式访问
    for i in cell1:
       print(i)
    print("你好")
    cell2=sh1[3]#第三行
    cell3=sh1['c']#第三列
    cell4=sh1[3:5]
    #通过迭代获取数据
    for row in sh1.iter_rows(min_row=1,max_row=2,max_col=3):
        for cell in row:
            print(cell.value)
    for row in sh1.iter_rows(min_row=1,max_row=2,max_col=3,min_col=1):#第一行到第二行
    #第一列到第三列
        for cell in row:
            print(cell.value)
def getalldata():#得到所有的数据
    from openpyxl import load_workbook
    wb = load_workbook('分量.xlsx')
    sh1 = wb.active
    for row in sh1.rows:#先从行开始打印
        for cell in row:
            print(cell.value)
    for col in sh1.columns:#先从列开始打印
        for cell in col:
            print(cell.value)
if __name__ == '__main__':
    getmanyvalue()

本来是2022.9.13的文章,今天补一下

猜你喜欢

转载自blog.csdn.net/qq_45859272/article/details/126849355