python操作excel自动化办公(python自动化办公设置excel样式)

技术Python办公自动化Excel怎么实现这篇文章主要介绍“Python办公自动化Excel怎么实现”,在日常操作中,相信很多人在Python办公自动化Excel怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好

本文主要介绍“如何实现Python办公自动化Excel”。在日常操作中,相信很多人对于如何实现Python办公自动化Excel都有疑问。边肖查阅了各种资料,整理出简单易用的操作方法,希望能帮你解答“如何实现Python办公自动化Excel”的疑惑!接下来,请和边肖一起学习!

前言

Python处理Excel的包是openpyxl,其支持操作的文件类型有:xlsx,xlsm,xltx . xltm。

pip安装openpyxl

安装后,我们应该了解Excel的组件,如下图所示:

Python办公自动化Excel怎么实现

Excel文件中三个对象

工作簿:工作簿是一个excel文件工作表。一个工作簿有多个工作表,并且标识了表名,例如“sheet1”和“sheet2”。单元格:存储数据对象的单元格。

00-1010 1.创建空白工作簿

创建一个空工作簿并重命名默认工作表。

#导入库中的工作簿

fromopenpyxlimportWorkbook

#创建工作簿

wb=工作簿()

#获取当前工作表并激活它。

工作表=wb.active

#设置工作表名称,或者不设置。不要将工作表的默认名称设置为工作表。

工作表标题='工作表1 '

打印(工作表标题)#打印工作表名称。

#保存表格

Wb.save('new_excel.xlsx ')已成功创建,如下所示

Python办公自动化Excel怎么实现

2.打开现有文件。

从openpyxlimportWorkbook,load_workbook

#加载excel文件

WB=load _ workbook(' new _ excel . xlsx ')

#获取您所在的工作表。

工作表=wb.active

#打印工作表名称

Print(sheet.title)# Output '工作表1'

一、创建、打开excel文件

写入excel的数据以坐标的形式写入,每个单元格可以用“纵坐标和横坐标”表示,如下:

Python办公自动化Excel怎么实现

方法1:将数据写入自定义位置

在C3和D3写入数据,如下所示

#导入库中的工作簿

从openpyxlimportWorkbook,load_workbook

#加载文件

WB=load _ workbook(' new _ excel . xlsx ')

#获取文件所在的工作表

工作表=wb.active

#打印工作表名称

打印(工作表标题)#输出工作表1

表['C3']='g '

irl"
sheet["D3"] = "beautiful"
#保存
wb.save("new_excel.xlsx")

Python办公自动化Excel怎么实现

 方法二:每行自动添加数据

会自动从上到下在有数据的那一行的下一行开始从左到右写入想要写入的数据

#导入库中的工作簿
from  openpyxl import Workbook, load_workbook
 
#加载文件
wb = load_workbook("new_excel.xlsx")
#或者文件的所在工作表
sheet = wb.active
#打印工作表名
print(sheet.title)   #输出工作表1
 
sheet.append([11,22,33,44,55])
sheet.append(['aa','bb','cc','dd','ee'])
 
#保存
wb.save("new_excel.xlsx")

Python办公自动化Excel怎么实现

读数据

表格内容如下

Python办公自动化Excel怎么实现

#导入库中的工作簿
from  openpyxl import Workbook, load_workbook
 
#加载文件
wb = load_workbook("cma.xx.xlsx")
 
# 1.打印所有的工作表
print(wb.sheetnames)     #输出 ['cma.xx', 'cma2.xx']
 
# 2.选择一个工作表进入
sheet = wb["cma.xx"]
#print(sheet)             #输出 <Worksheet "cma.xx">
 
# 3.获取单元格A2的值
print(sheet["A2"].value)  #输出 http://api.data.xxx.cn:8090
 
# 4.获取多个单元格的值,在同一行中
for cell in sheet["A2:C2"]:
	for i in cell:
		print(i.value)       #输出具体单元格值
# 5.在不同的行中
for cell in sheet["A2:B4"]:
	for i in cell:
		print(i.value)       #输出具体单元格值
 
# 6.打印表中的所有数据
for row in sheet:                   #遍历每一行
	for i in row:                   #遍历每一行中的每一个单元格       
		print(i.value,end=", ")     #打印每行的单元格数据
	print()
 
# 7.获取指定范围单元格中的数据
for row in sheet.iter_rows(min_row=2, max_row=5, max_col=6):
	for i in row:
		print(i.value,end=', ')
	print()
 
# 8.按列的方式遍历,即以纵向的方式读取数据
for row in sheet.columns:  #从第一列数据开始遍历
	for i in row:          #获取每一列中的每一个数据
		print(i.value,end=", ")
	print()

删除数据

1. 删除整列数据

#导入库中的工作簿
from  openpyxl import Workbook, load_workbook
 
#加载文件
wb = load_workbook("cma.xx.xlsx")
 
# 选择一个工作表进入
sheet = wb["cma.xx"]
 
sheet.delete_cols(2)    #指定删除第二列
sheet.delete_cols(2,3)  #删除第二列的往下三列,包括第二列
 
wb.save("cma.xx.xlsx")

三、csv文件转xlsx

在进行文件转换时我们需要关注两个文件的编码方式,在使用pandas读取csv文件时,也需要指定解码方式

1. 首先查看需要转换的ccv文件的编码方式,使用记事本打开csv文件,查看-状态栏,可以看到文件下方有编码方式:ANSI

Python办公自动化Excel怎么实现

2. 脚本如下

import pandas as pd
 
def csv_to_xlsx():
    csv = pd.read_csv('cma.xx.csv', encoding='ANSI')
    csv.to_excel('2.xlsx', sheet_name='data', index=False)
 
if __name__ == '__main__':
    csv_to_xlsx()

到此,关于“Python办公自动化Excel怎么实现”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/156066.html

(0)

相关推荐

  • swing客户端设置(哪些是swing的界面组件)

    技术Swing客户端的知识有哪些这篇文章将为大家详细讲解有关Swing客户端的知识有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.简介Jakarta Struts

    攻略 2021年12月18日
  • java如何简单快速处理xml中的数据

    技术java如何简单快速处理xml中的数据这篇文章给大家介绍java如何简单快速处理xml中的数据,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Java有什么方便解析XML的类库吗?比如处理如下这段

    攻略 2021年12月2日
  • 三明治的英语,我想要一个三明治用英语怎么说

    技术三明治的英语,我想要一个三明治用英语怎么说我想要一个三明治三明治的英语。I want a sandwich.Id like (to have) a sandwich = I would like (to have)

    生活 2021年10月25日
  • 过去的日子如什么仿写,匆匆第4段的仿写急!在线等

    技术过去的日子如什么仿写,匆匆第4段的仿写急!在线等1过去的日子如什么仿写、过去的日子如一块巧克力,不久就在嘴里化了;如一滴水,在阳光的照耀下蒸发了;
    如一个细胞,很快就死去了;如一片雪花,被阳光照化了。
    2、在这烟花缤

    生活 2021年10月25日
  • linux 中grep命令依据匹配次数进行查找

    技术linux 中grep命令依据匹配次数进行查找 linux 中grep命令依据匹配次数进行查找1、x\{m\}# 重复字符x,m次,如:'0{5}'匹配包含5个o的行。
    x\{m,\} # 重复字符

    礼包 2021年12月14日
  • Java开发必须要学的软件有哪些

    技术Java开发必须要学的软件有哪些 Java开发必须要学的软件有哪些作为Java初学者,应该学会哪些Java软件开发工具呢这个问题就由千锋重庆Java的小编来为大家解答。
    1.JDK:
    jdk:Jav

    礼包 2021年12月7日