(12)-Python3之--openpyxl模块
1.安装
pip install openpyxl
2.Excel操作的流程
1、打开excel,进入工作薄 workbook
2、选择表单 Sheet
3、单元格 Cell
4、读写操作
3.Excel操作
首先准备已经存在的Excel表格。
3.1获取单元格的值
from openpyxl import load_workbook
# 选择Excel表
wb = load_workbook(r'E:\Users\Web_Core\xlstest.xlsx')
# 选择表单
sh = wb['Sheet1']
# 获取单元格的值,从1开始。
print(sh.cell(1,1).value) 结果:
A1
3.2写入单元格的值
from openpyxl import load_workbook
# 选择Excel表
wb = load_workbook(r'E:\Users\Web_Core\xlstest.xlsx')
# 选择表单
sh = wb['Sheet1'] # 写单元格的值
sh.cell(6,1).value = "二狗"
# 保存写入的数据 - 整个工作薄
wb.save(r'E:\Users\Web_Core\xlstest.xlsx')
结果:
3.3获取总行数、总列数
from openpyxl import load_workbook
# 选择Excel表
wb = load_workbook(r'E:\Users\Web_Core\xlstest.xlsx')
# 选择表单
sh = wb['Sheet1'] rows = sh.max_row # 总行数
print("总行数为:" + str(rows))
colums = sh.max_column # 总列数
print("总列数为:" + str(colums)) 结果:
总行数为:10
总列数为:4
3.4读取所有的数据
from openpyxl import load_workbook # 定义一个获取所有数据的函数
def read_all_data():
wb = load_workbook(r"E:\Users\Web_Core\xlstest.xlsx") # 打开Excel
sh = wb['Sheet1'] # 获取表单
cases = [] # 所有的cases用列表存放
max_row = sh.max_row # 获取最大行
max_column = sh.max_column # 获取最大列 # 通过双循环获取所有数据
for r in range(2, max_row + 1): # 遍历行
case = {}
for j in range(1, max_column + 1):
key = sh.cell(row=1, column=j).value # 遍历列
case[key] = sh.cell(row=r, column=j).value
cases.append(case) # 将一行数据放到列表 wb.save(r"E:\Users\Web_Core\xlstest.xlsx")
wb.close()
return cases # 调用函数,打印数据
all_data = read_all_data()
print(all_data) 结果:
[{'D1': 'D2', 'C1': 'C2', 'B1': 'B2', 'A1': 'A2'}, {'D1': 'D3', 'C1': 'C3', 'B1': 'B3', 'A1': 'A3'},
{'D1': 'D4', 'C1': 'C4', 'B1': 'B4', 'A1': 'A4'}, {'D1': 'D5', 'C1': 'C5', 'B1': 'B5', 'A1': 'A5'},
{'D1': 'D6', 'C1': 'C6', 'B1': 'B6', 'A1': '二狗'}, {'D1': 'D7', 'C1': 'C7', 'B1': 'B7', 'A1': 'A7'},
{'D1': 'D8', 'C1': 'C8', 'B1': 'B8', 'A1': 'A8'}, {'D1': 'D9', 'C1': 'C9', 'B1': 'B9', 'A1': 'A9'},
{'D1': 'D10', 'C1': 'C10', 'B1': 'B10', 'A1': 'A10'}]
(12)-Python3之--openpyxl模块的更多相关文章
- python基础语法12 内置模块 json,pickle,collections,openpyxl模块
json模块 json模块: 是一个序列化模块. json: 是一个 “第三方” 的特殊数据格式. 可以将python数据类型 ----> json数据格式 ----> 字符串 ----& ...
- python之openpyxl模块
一 . Python操作EXCEL库的简介 1.1 Python官方库操作excel Python官方库一般使用xlrd库来读取Excel文件,使用xlwt库来生成Excel文件,使用xlutils库 ...
- Python3之turtle模块的使用
Python3之turtle模块的使用 直接扣代码就行: import turtle as t t.pensize(4) t.hideturtle() t.colormode(255) t.c ...
- 常用模块 - openpyxl模块
一.简介 xlrd/xlwt 主要是针对Office 2003或更早版本的XLS文件格式 缺点:不支持XLSX文件格式 OpenPyXL 能读能写能修改 缺点:不支持XLS Microsoft Exc ...
- Python3中正则模块re.compile、re.match及re.search函数用法详解
Python3中正则模块re.compile.re.match及re.search函数用法 re模块 re.compile.re.match. re.search 正则匹配的时候,第一个字符是 r,表 ...
- Python3之时间模块详述
Python3之时间模块 time & datetime & calendar 一. 概述 python 提供很多方式处理日期与时间,转换日期格式是一个常见的功能. 时间元组:很多p ...
- 2019-7-19 包、logging模块、hashlib(加密模块)、openpyxl模块、深浅拷贝
一.包 什么是包: 它是一系列模块文件的结合体,表示形式就是一个文件夹.该文件内部通常会有一个__init__.py文件,包的本质还是一个模块,可以被调用,调包就相当于与调用__init__.py文件 ...
- Python3之logging模块浅析
Python3之logging模块浅析 目录 Python3之logging模块浅析 简单用法 日志与控制台同时输出 一个同时输出到屏幕.文件的完成例子 日志文件截取 日志重复打印问题解决 问题分 ...
- python openpyxl模块实现excel的读取,新表创建及原数据表追加新数据
当实际工作需要把excel表的数据读取出来,或者把一些统计数据写入excel表中时,一个设计丰富,文档便于寻找的模块就会显得特别的有吸引力,本文对openpyxl模块的一些常见用法做一些记录,方便工作 ...
随机推荐
- windows下python3和python2虚拟环境配置
Python3 被越来越多的开发者所接受,同时让人尴尬的是很多遗留的老系统依旧运行在 Python2 的环境中,因此有时你不得不同时在两个版本中进行开发,调试. 如何在系统中同时共存 Python2 ...
- Collection集合重难点梳理,增强for注意事项和三种遍历的应用场景,栈和队列特点,数组和链表特点,ArrayList源码解析, LinkedList-源码解析
重难点梳理 使用到的新单词: 1.collection[kəˈlekʃn] 聚集 2.empty[ˈempti] 空的 3.clear[klɪə(r)] 清除 4.iterator 迭代器 学习目标: ...
- Autofac官方文档翻译--一、注册组件--3属性和方法注入
官方文档:http://docs.autofac.org/en/latest/register/prop-method-injection.html Autofac 属性和方法注入 虽然构造函数参数注 ...
- Kafka数据每5分钟同步到Hive
1.概述 最近有同学留言咨询Kafka数据落地到Hive的一些问题,今天笔者将为大家来介绍一种除Flink流批一体以外的方式(流批一体下次再单独写一篇给大家分享). 2.内容 首先,我们简单来描述一下 ...
- 处理xls文件
package com.cn.peitest.excel; import java.io.File; import java.io.FileInputStream; import java.io.Fi ...
- java中读取word文档里的内容
package com.cn.peitest.excel.word; import java.io.FileInputStream; import java.io.FileOutputStream; ...
- Linux下删除文件名带有空格的文件
1.使用单引号将文件名括起来进行操作: rm '2018-08-07 17-29-48.png'
- flink集群模式安装配置
一.手动下载安装包 wget http://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-1.6.1/flink-1.6.1-bin-hadoop27 ...
- vue项目中的路由守卫
路由守卫的意义就相当于一个保安一样,作用很大,在实际的项目中运用也是不少,也就是当客户在登陆自己账号的时候,有可能存在客户有啥事的时候,自己后台或者pc的关闭全部浏览器,没有点击退出登录,或者在退出登 ...
- mysql锁类型
mysql锁类型 问题 都有哪些锁 锁与隔离级别的关系 sql语句中涉及都涉及哪些锁 事务中,锁何时释放 死锁检测机制 概要