四个Python操作Excel的常用脚本分享
作者:阿黎逸阳 发布时间:2023-12-04 07:04:27
标签:Python,操作,Excel
一、安装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()
得到结果:
也可以用函数删除工作表,代码如下:
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循环控制在相应位置写下行号,得到结果:  
五、设置单元格的颜色字体
接着在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")
#设置单元格填充颜色
得到结果:
六、在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中的openpyxl模块操作excel代码已讲解完毕。感兴趣的小伙伴可以更深入地测试这些代码。本文只给出了基础代码,更多特殊需求,可以在此代码的基础上进行调整。如果想在excel中设置好格式,只把数据粘贴到文档中,还可以调用xlwings模块进行excel操作。
来源:https://blog.csdn.net/qq_32532663/article/details/127949846
0
投稿
猜你喜欢
- XML有很多相关的技术,将这些技术结合起来,才能充分发挥XML的强大功能。这些技术包括:Xlink与Xpointer(设置XML的超链接)、
- 一、CSS HACK以下两种方法几乎能解决现今所有HACK.1, !important随着IE7对!important的支持, !impor
- 使用Python创建websocket服务端,并给出不同客户端的请求一、 WebSocket是啥WebSocket 和HTTP一样,也是一种
- 作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域链的工作原理。今天这篇
- Python可以使用 xml.etree.ElementTree 模块从简单的XML文档中提取数据。 为了演示,假设你想解析Planet P
- 工作中遇到的问题,自定义了一个forms.form表单,某项需要作出下拉菜单,下拉菜单中的选项需要从数据库(objectForm model
- 我们在操作 ini 配置文件的时候 可以使用 Python 的 configparser 库具体使用方法如下:from configpars
- 1. 先介绍几个常用的 MySQL 函数RAND() 随机生成 0~1 之间的小数(0<1)CEI
- 哎~工作忙死了!!!!!!今天在百度老年看到一个手写输入法,颇感新鲜。so把其框下!请不要用在商业用途,学习之用,版权百度所有。看代码!注:
- bytes 和 bytearraybytes 和 bytearray 都是二进制世界的成员,用二进制的方式去理解才能看清他的本质。理解byt
- DJANGO_SETTINGS_MODULE使用Django时要通知Django当前使用的是哪个配置文件。可以改变环境变量 DJANGO_S
- 在当今用户的显示器越来越大的今天,之前的1024*768固宽布局有点越来越不合时宜,对大屏幕的用户而言,两侧空空的留白给人第一眼的印象是严重
- date() 获取日期,格式:2004-2-28 time() 获取时间,格式:22:24:59 now() 获取日期和时间 格式: 200
- 技术背景对于一些连续运行或者长时间运行的Python程序而言,如服务器的后端,或者是长时间运行的科学计算程序。当我们涉及到一些中途退出的操作
- 最基本的MMM安装必须至少需要2个数据库服务器和一个监控服务器下面要配置的MySQL Cluster环境包含四台数据库服务器和一台监控服务器
- 1、简介pyqt 列表 单元格中 不仅可以添加数据,还可以添加控件。我们尝试添加下拉列表、一个按钮试试。setItem:将文本放到单元格中s
- 一、pandas的统计分析1、关于pandas 的数值统计(统计detail 中的 单价的相关指标)import pandas as pd#
- 此次遇到的问题是在import pycurl 时报错pycurl:libcurl link-time version is older th
- Q:在给Dataloader设置worker数量(num_worker)时,到底设置多少合适?这个worker到底怎么工作的?
- 前言后续还会更新更多优雅的规范。命名风格1. 【强制】代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。&n