四个Python操作Excel的常用脚本分享

作者:阿黎逸阳 时间:2023-12-04 07:04:27 

一、安装openpyxl模块

Python操作excel主要用到了openpyxl模块,按win+R打开cmd,在里面输入

pip3 install openpyxl

即可成功安装openpyxl模块。

二、加载库

接着加载库,并设置数据存放的文件夹。

import os
import random
import openpyxl
import numpy as np
import pandas as pd
from openpyxl.drawing.image import Image
from openpyxl.worksheet.table import Table,TableStyleInfo
from openpyxl.styles import Border, Side, PatternFill, Font, GradientFill, Alignment
from openpyxl.utils import get_column_letter,column_index_from_string
#导入库

os.chdir(r'G:/python/13_python处理excel/')
#设置文件存放的地址

三、创建文件和工作表

接着创建文件和工作表,代码如下:

wb = openpyxl.Workbook()
#创建工作表
wb_sht1 = wb.create_sheet(title='插入数据', index=0)
wb_sht2 = wb.create_sheet(title='插入表格', index=0)
wb.save('cs.xlsx')
wb.close()

得到结果:

四个Python操作Excel的常用脚本分享

也可以用函数删除工作表,代码如下:

wb.remove(wb_sht1)  

四、在工作表指定单元格写数据

接着在工作表中写数据,代码如下:

#在每一行写入行号
wb = openpyxl.Workbook()
#创建工作表
wb_sht1 = wb.create_sheet(title='插入数据', index=0)
wb_sht2 = wb.create_sheet(title='插入表格', index=0)
for r_index in range(1, 10):
   for c_index in range(1, 10):
       wb_sht1.cell(row=r_index, column=c_index, value=r_index)

两层for循环控制在相应位置写下行号,得到结果:  

四个Python操作Excel的常用脚本分享

五、设置单元格的颜色字体

接着在A1单元格测试设置字体大小、颜色、边框线条,代码如下:

thin = Side(border_style="thin", color="FF0000")
#红色细线条
double = Side(border_style="double", color="000000")
#黑色粗线条
wb_sht1_A1 = wb_sht1["A1"]
#选择要调整颜色的单元格
wb_sht1_A1.font = Font(b=True, color='008000')
#设置单元格字体颜色
wb_sht1_A1.alignment = Alignment(horizontal='left', vertical='center')
#设置单元格排列方式
wb_sht1_A1.border = Border(top=double, left=thin, right=thin, bottom=double)
#设置边框线条
wb_sht1_A1.fill = PatternFill("solid", fgColor="0000FF")
#设置单元格填充颜色

得到结果:

四个Python操作Excel的常用脚本分享

六、在excel中写入表格

最后在excel中写入表格,代码如下:

os.chdir(r'G:/python/13_python处理excel/')
#设置文件存放的地址
wb = openpyxl.Workbook()
#创建工作表
wb_sht1 = wb.create_sheet(title='插入数据', index=0)
wb_sht2 = wb.create_sheet(title='插入表格', index=0)
date = pd.DataFrame(np.random.randint(20, 50, (4, 4)))
col_name = ['col1', 'col2', 'col3', 'col4']
date.columns = col_name
wb_sht2.append(col_name)
for row in range(date.shape[0]):
   wb_sht2.append(list(date.iloc[row, ]))
table = Table(id=1, displayName='excel_table3', ref='A1:D4')
wb_sht2.add_table(table)
wb.save('cs1.xlsx')
wb.close()

得到结果: 

四个Python操作Excel的常用脚本分享

至此,用Python中的openpyxl模块操作excel代码已讲解完毕。感兴趣的小伙伴可以更深入地测试这些代码。本文只给出了基础代码,更多特殊需求,可以在此代码的基础上进行调整。如果想在excel中设置好格式,只把数据粘贴到文档中,还可以调用xlwings模块进行excel操作。

来源:https://blog.csdn.net/qq_32532663/article/details/127949846

标签:Python,操作,Excel
0
投稿

猜你喜欢

  • 详解Python 函数如何重载?

    2021-04-11 04:48:30
  • Python图像处理之透视变换的实战应用

    2022-08-16 17:22:10
  • sql2000数据库清除重复数据的二种方法

    2024-01-18 11:08:33
  • 算法系列15天速成 第十一天 树操作(上)

    2022-08-03 13:03:56
  • python求加权平均值的实例(附纯python写法)

    2022-12-22 22:12:03
  • 使用coverage统计python web项目代码覆盖率的方法详解

    2023-05-23 18:24:35
  • MySQL去重的方法整理

    2024-01-27 07:04:42
  • Python连接Redis的基本配置方法

    2023-09-29 21:28:27
  • Python本地与全局命名空间用法实例

    2022-01-05 10:01:12
  • 一个有趣的SQL命题 用一条语句切换BIT型的真假值

    2024-01-24 04:57:38
  • python生成器用法实例详解

    2023-01-24 12:46:58
  • MYSQL复杂查询练习题以及答案大全(难度适中)

    2024-01-12 14:54:45
  • Python *args和**kwargs用法实例解析

    2023-01-16 18:30:55
  • python实现画桃心表白

    2021-05-14 16:27:00
  • python中json格式处理和字典的关系

    2021-04-10 04:35:12
  • 一个二级伸缩下拉菜单代码

    2008-06-24 18:12:00
  • Windows7下安装使用MySQL8.0.16修改密码、连接Navicat问题

    2024-01-15 08:58:26
  • Python文本特征抽取与向量化算法学习

    2023-07-19 09:44:29
  • 解决python spyder 突然打不开的问题

    2022-07-07 19:43:06
  • pycharm实现猜数游戏

    2023-01-14 19:04:49
  • asp之家 网络编程 m.aspxhome.com