第十一天-Excel的操作

目录

1.xlrd-Excel的读模块

安装

使用

获取工作簿

读取工作簿的内容

xlsxwriter-Excel的写模块

安装

使用

生成图表

add_series参数

图表的样式

demo:生成图表

Excel的操作在python中有多个模块,为了能够快速使用,选择了相对简单且功能全面的模块来介绍。

1.xlrd-Excel的读模块

安装

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xlrd==1.2.0

导入: import xlrd

使用

book=xlrd.open_workbook(excel文件)

获取工作簿

读取工作簿的内容

复制代码
import xlrd

book=xlrd.open_workbook("小小小向日葵.xlsx")

sheet0=book.sheet_by_index(0)

print("总行数:",sheet0.nrows)
print("总列数:",sheet0.ncols)

for s in sheet0.get_rows():
    #print(s)
    values=[]
    for i in s:
        values.append(i.value)
    print(values)

xlsxwriter-Excel的写模块

安装

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xlsxwriter

导入 import xlsxwriter

使用

#生成excel对象

book=xlswriter.Workbook("Excel文件名")

#创建工作簿

sheet=book.add_sheet(工作簿)

demo:复制Excel

复制代码
# coding:utf-8

import xlrd
import xlsxwriter


def copy_excel(path,newfile):
    #读取Excel
    book=xlrd.open_workbook(path)
    sheets=book.sheets()
    newbook = xlsxwriter.Workbook(newfile)
    for sheet in sheets:
        sheetname=sheet.name
        #根据名称读取工作簿
        sheet = book.sheet_by_name(sheetname)
        #创建新的工作簿
        newsheet=newbook.add_worksheet(sheetname)
        #读取工作簿数据
        for index,row in enumerate(sheet.get_rows()):
            print("index:{},rows:{}".format(index,row))
            for sub_index,sub_row in enumerate(row):
                newsheet.write(index,sub_index,sub_row.value)
    newbook.close()

if __name__ == '__main__':
    copy_excel("医生信息.xlsx",newfile="医生信息1.xlsx")

生成图表

add_series参数

图表的样式

demo:生成图表

复制代码
# coding:utf-8

import xlsxwriter

if __name__ == '__main__':
    book=xlsxwriter.Workbook("图表Excel.xlsx")
    sheet=book.add_worksheet("图表")

    data=[
        ["优秀","良好","中","差"],
        [100, 200, 5, 10]
    ]
    sheet.write_column("A1", data[0])
    sheet.write_column("B1", data[1])
    #创建图表:饼图
    chart=book.add_chart({"type":"pie"})
    chart.add_series({
        "categories":"=图表!$A$1:$A$4",
        "values":"=图表!$B$1:$B$4",
        "name":"学生成绩占比"
    })
    chart.set_title({"name":"学生成绩占比"})
    sheet.insert_chart("A10",chart)
    book.close()
相关推荐
l木本I9 分钟前
大模型低秩微调技术 LoRA 深度解析与实践
python·深度学习·自然语言处理·lstm·transformer
哆啦A梦的口袋呀12 分钟前
基于Python学习《Head First设计模式》第七章 适配器和外观模式
python·学习·设计模式
十月狐狸15 分钟前
Python字符串进化史:从青涩到成熟的蜕变
python
新加坡内哥谈技术35 分钟前
Meta计划借助AI实现广告创作全自动化
运维·人工智能·自动化
狐凄1 小时前
Python实例题:Python计算线性代数
开发语言·python·线性代数
西猫雷婶1 小时前
pytorch基本运算-导数和f-string
人工智能·pytorch·python
述雾学java1 小时前
深入理解 transforms.Normalize():PyTorch 图像预处理中的关键一步
人工智能·pytorch·python
要努力啊啊啊1 小时前
使用 Python + SQLAlchemy 创建知识库数据库(SQLite)—— 构建本地知识库系统的基础《一》
数据库·人工智能·python·深度学习·自然语言处理·sqlite
Andrew_Xzw2 小时前
数据结构与算法(快速基础C++版)
开发语言·数据结构·c++·python·深度学习·算法
凤头百灵鸟3 小时前
Python语法基础篇(包含类型转换、拷贝、可变对象/不可变对象,函数,拆包,异常,模块,闭包,装饰器)
python