学会python操作excel永不加班系列

目录
  • 一、第三方类库介绍
  • 二、安转第三方类库
  • 三、引用xlrd读取excel数据
  • 四、引入openpyxl写入数据  
  • 总结

实验环境:

系统:win10

语言:python3.8

承载软件:pycharm2021.1.2 (Professional Edition)

第三方类库:openpyxl、xlrd

一、第三方类库介绍

xlrd库是一个很常用的读取excel文件的库,其对excel文件的读取可以实现比较精细的控制。

openpyxl是实现excel的写入操作的第三方类库

二、安转第三方类库

pip install xlrd==1.2.0 #此处一定要安转这个版本的xlrd,新版的xlrd可能会出现不兼容xlsx后缀文件的情况

pip install openpyxl

三、引用xlrd读取excel数据

首先我先来选取一个测试的数据,因为在之前写过Numpy和pandas的操作我们可以直接生成一个名为“test.xlsx”的文件。点击此处获取知识链接

因为工作中大部分人的excel并不像此处如此完美所以不可以直击使用pandas库进行操作,结合工作中的实际情况自行斟酌使用

import numpy as np
import pandas as pd
df = pd.DataFrame(data=np.random.randint(1,90,size=[10,3]),columns=['日用户','日销售额','日成本'])
df.to_excel('test.xlsx')

导入xlrd包并读取数据

import xlrd
#选中要读取的excel文件
test1 = xlrd.open_workbook('test.xlsx')
# 根据sheet索引获取sheet页 0表示1 1表示2 以此类推
sheet = test1.sheet_by_index(0)
# 根据sheet名称获取sheet页 0表示1 1表示2 以此类推
sheet1 = test1.sheet_by_name('Sheet1')
# 打印工作表的名称、行数和列数
print("打印工作表的名称、行数和列数:")
print('名称:',sheet.name, '行数:',sheet.nrows,'列数:', sheet.ncols)
# 选中列
col = sheet.col_values(2)
print('col',col)
# 选中行
row = sheet.row_values(2)
print('row',row)
# 根据行索引选定列 注意row()中以1开始 []中以0开始
print(sheet.row(1)[2].value)

四、引入openpyxl写入数据  

import openpyxl
# 选中写入的excel文件
workbook=openpyxl.load_workbook('test.xlsx')
# 选中将要写入的sheet页
sheets = workbook["Sheet1"]
# 给第一个单元格写入数据;
sheets["A1"] = "黑龙江省"
# 设置字体为红色;字体大小;字体为粗体;字体为斜体
from openpyxl.styles import Font,colors
sheets["A1"].font = Font(color='981818',size = 15,bold = True,italic = True,)
# 获取第一个单元格的内容;
print(sheets["A1"].value)
# 给任意一个单元格赋值
sheets.cell(2,1,value = "江苏省")# 保存数据,如若名称存在就覆盖 否则新建文件
workbook.save('更改后输出.xlsx')

效果如图

此处知识异常简单需要基本的语句操作练习即可可游刃有余。

下面推荐一个今天遇到的问题胡乱写了个demo

import openpyxl
import xlrd
# op选中文件
workbook1=openpyxl.load_workbook('test1.xlsx')
sheets=workbook1['Sheet1']
# xlrd选中文件
book = xlrd.open_workbook("test1.xlsx")
# 选中sheet1
sheet = book.sheet_by_index(0)
# 单位列
dw = sheet.col_values(2)
# 数量列
nb = sheet.col_values(1)
print(dw)
# 若单位为0则乘以10000否则不变
for i in range(len(dw)):
    if dw[i]==0:
        data = sheets.cell(i+1, 2).value=nb[i]*10000
    else:
        data = sheets.cell(i+1, 2).value = nb[i]
    print(data)
# 删除单位(第三)列
sheets.delete_cols(3)
# 覆盖保存原数据
workbook1.save('test1.xlsx')

操作前

操作后

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • 使用Python自动化Microsoft Excel和Word的操作方法

    将Excel与Word集成,无缝生成自动报告 毫无疑问,微软的Excel和Word是公司和非公司领域使用最广泛的两款软件.它们实际上是"工作"的同义词.通常情况下,每一周我们都会将两者结合起来,并以某种方式发挥它们的优点.虽然一般的日常用途不会要求自动化,但有时自动化可能是必需的.也就是说,当您有大量的图表.图形.表格和报告要生成时,如果您选择手动方式,它可能会成为一项极其繁琐的工作.其实没必要这样.实际上,有一种方法可以在Python中创建一个管道,您可以将两者无缝集成,在Excel

  • 用python修改excel表某一列内容的操作方法

    想想你在一家公司里做表格,现在有一个下面这样的excel表摆在你面前,这是一个员工每个月工资的表, 现在假设,你要做的事情,是填充好后面几个月每个员工的编号,并且给员工随机生成一个2000到50000之间的随机数作为该月的工资,能拿多少全靠天意,你为了锻炼自己的python能力决定写一个相关的代码: 1 库引入 首先要引入库函数,要修改excel内容首先需要有openpyxl这个库,要生成随机数就要有random这个库 import openpyxl import random 2 提取cell

  • python使用openpyxl库读写Excel表格的方法(增删改查操作)

    一.前言 嗨,大家好,我是新发. 最近需要做个小工具,可以通过python来读写Excel,实现增删改查操作.以前用的是xlrd和xlwt这两个python库,今天我要讲的是openpyxl库,我觉得openpyxl比xlrd和xlwt更强大更好用,话不多说,开始吧. 二.安装openpyxl 可以直接通过命令行安装 pip install openpyxl 如果你是内网环境,则可以先在外网下载openpyxl库然后转到内网再安装. openpyxl下载地址:https://pypi.org/p

  • python操作mysql、excel、pdf的示例

    一.学习如何定义一个对象 代码: #!/usr/bin/python # -*- coding: UTF-8 -*- # 1. 定义Person类 class Person: def __init__(self, name, age): self.name = name self.age = age def watch_tv(self): print(f'{self.name} 看电视') # 2. 定义loop函数 # 打印 1-max 中的奇数 def test_person(): pers

  • Python利器openpyxl之操作excel表格

    python处理数据时,可以将数据保存至excel文件中,此处安利一个python利器,openpyxl,可以自动化处理数据值excel表格中. 1.安装 pip install openpyxl 2.使用 在使用前,需理清excel的几个概念 workbook:工作薄,即一个excel文件 worksheet:工作表,一个excel文件包含多个sheet,即包含多个工作表 colunm:列,excel中一竖列 row:行,excel中一横行 cell:单元格,组成工作表的最小单位 2.1 Wo

  • python办公自动化之excel的操作

    准备 使用 Python 操作 Excel 文件,常见的方式如下: xlrd / xlwt openpyxl Pandas xlsxwriter xlwings pywin32 xlrd 和 xlwt 是操作 Excel 文件最多的两个依赖库 其中, xlrd 负责读取 Excel 文件,xlwt 可以写入数据到 Excel 文件 我们安装这两个依赖库 # 安装依赖库 pip3 install xlrd  pip3 install xlwt  xlrd 读取 Excel 使用 xlrd 中的 o

  • 学会python操作excel永不加班系列

    目录 一.第三方类库介绍 二.安转第三方类库 三.引用xlrd读取excel数据 四.引入openpyxl写入数据 总结 实验环境: 系统:win10 语言:python3.8 承载软件:pycharm2021.1.2 (Professional Edition) 第三方类库:openpyxl.xlrd 一.第三方类库介绍 xlrd库是一个很常用的读取excel文件的库,其对excel文件的读取可以实现比较精细的控制. openpyxl是实现excel的写入操作的第三方类库 二.安转第三方类库

  • 如何基于python操作excel并获取内容

    这篇文章主要介绍了如何基于python操作excel并获取内容,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 背景:从excel表中获取请求url.请求数据.请求类型.预期结果 因此,需要学会如何使用python从excel获取这些信息 #coding=utf-8 import xlrd #创建对象时,获取对应excel 表格 #读取Excel行数 #获取单元格内容 class OperationExcel: def __init__(self

  • 使用Python操作excel文件的实例代码

    使用的类库 pip install openpyxl 操作实现 •工作簿操作 # coding: utf-8 from openpyxl import Workbook # 创建一个excel工作簿 wb = Workbook() # 打开一个工作簿 wb = load_workbook('test.xlsx') # 保存工作簿到文件 wb.save('save.xlsx') •工作表操作 # 获得当前的工作表对象 ws = wb.active # 通过工作表名称得到工作表对象 ws = wb.

  • Python操作Excel插入删除行的方法

    1. 前言 由于近期有任务需要,要写一个能够处理Excel的脚本,实现的功能是,在A表格上其中一列,对字符串进行分组和排序,然后根据排序好的A表格以固定格式自动填写到B表格上. 开始写脚本之前查了很多资料,最开始采用了openpyxl这个模块,用起来很顺手,使用这个对A表格其中一列进行了重新填写,但是后来发现,需要用到删除和插入空白行的操作,使用openpyxl比较困难,这个模块仅支持在表格的最后一行继续添加新行,不支持在中间插入和删除行. 在查找的过程中发现,网上流传了一些使用openpyxl

  • python操作excel让工作自动化

    某局某领导给了3只excel文件,一只里面有4个sheet需要处理,一个sheet有250+列,算下来总共有3000+列需要手动反复插入.删除列.拷贝.求和,所以给了4天的时间要完成. 我不愿意做大量简单而且又是重复性工作,看了看3只表格的格式基本一样,于是我用python写了30行代码完成了这个"艰巨"任务. 0x01 用python操作excel需要安装xlrd.xlwt(或者其他的模块也行). 读取excel文件:workbook = xlrd.open_workbook('fi

  • python操作excel的方法

    摘要: Openpyxl是一个常用的python库,用于对Excel的常用格式及其模板进行数据读写等操作. 简介与安装openpyxl库 Openpyxl is a Python library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files. 安装 pip install openpyxl pillow:在文件中需要使用images (jpeg, png, bmp,...)时,需要安装pillow库. 注意:写操作时请关

  • python操作excel的包(openpyxl、xlsxwriter)

    本文为大家分享了python操作excel的包,供大家参考,具体内容如下 现在支持python操作excel的包有下列这些 官网上最推荐的是openpyxl,其他包支持较老的excel版本. xlsxwriter无法对打开的excel进行写操作,excel必须处于关闭状态才能写成功. xlswriter 基本代码: import xlsxwriter workbook = xlsxwriter.Workbook('hello.xlsx') worksheet = workbook.add_wor

  • python操作excel的方法(xlsxwriter包的使用)

    本文介绍python操作excel的方法(xlsxwriter包的使用),具体内容如下 xlsxwriter包的安装 pip install xlsxwriter Workbook类 创建一个excel文件 filename = "test.xlsx" # Workbook代表整个电子表格文件,并且存储在磁盘上.filename为字符串类型,表示创建的excel文件存储路径: wb = xlsxwriter.Workbook(filename) 创建一个sheet表:add_works

  • python操作excel文件并输出txt文件的实例

    如下所示: #coding=utf-8 import os import xlrd #excel文件放置在当前路径 path='model.xls' #打开文件 data=xlrd.open_workbook(path) #查询工作表 sheets=data.sheets() #可以通过函数.索引.名称获得工作表. # sheet_1_by_function=data.sheets()[0] # sheet_1_by_index=data.sheet_by_index(0) sheet_1_by

  • Python操作Excel工作簿的示例代码(\*.xlsx)

    前言 Excel 作为流行的个人计算机数据处理软件,混迹于各个领域,在程序员这里也是常常被处理的对象,可以处理 Excel 格式文件的 Python 库还是挺多的,比如 xlrd.xlwt.xlutils.openpyxl.xlwings 等等,但是每个库处理 Excel 的方式不同,有些库在处理时还会有一些局限性. 接下来对比一下几个库的不同,然后主要记录一下 xlwings 这个库的使用,目前这是个人感觉使用起来比较方便的一个库了,其他的几个库在使用过程中总是有这样或那样的问题,不过在特定情

随机推荐