1、创建工作簿

from openpyxl import Workbook
# 创建excel对象
wb = Workbook()
# 获取第一个sheet = wb.active
# 单元格写入内容
ws.append(['单元1','单元2','钉钉'])
ws['A1'] = 'A1'
ws['A2'] = '你好'+'A2'
# 新行写入多个单元格,默认会在新的一行里写入内容
ws.append(['单元11','单元22','钉钉1'])
# 插入自定义时间对象
import time
ws['B2'] = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())
# 保存表格
wb.save("sample_demo.xlsx")

 2、创建sheet

from openpyxl import Workbook
wb = Workbook()
#创建sheet,如果已经存在多个sheet,默认在最后位置插入
ws1 = wb.create_sheet("sheet1")
#设置sheet的名字,注意'sheet1'为sheet对象的名字
ws1.title = '表1'
#指定位置创建sheet,第1个插入
ws2 = wb.create_sheet('sheet2',0)
ws2.title = '表0'
wb.save('sample_demo.xlsx') #获取某个sheet对象,两种方式
print(wb.get_sheet_by_name('表1'))
print(wb['表1'] == wb.get_sheet_by_name('表1')) #True #获取全部sheet名字
print(wb.sheetnames)
for i in wb:
print(i.title) #复制sheet
wb['表1']['A1'] = '中国'
source = wb['表1']
target = wb.copy_worksheet(source)
target.title = '拷贝表格'
wb.save('sample_demo.xlsx')

3、操作单元格

wb = Workbook()
ws = wb.create_sheet('my_sheet1')
# 单元格写入数据,两种方式
ws['A1'] = ''
ws['A2'] = '你好200'
v = ws.cell(3,1,300)
print(ws['A1'].value)
print(ws['A2'].value)
print(v.value)
#单元格输入百分号
ws['a1'] = "12%"
#打印出的是str类型的‘12%’
print(ws['a1'].value)
print(type(ws['a1'].value))

4、批量操作单元格

from openpyxl import Workbook
wb = Workbook()
ws = wb.create_sheet('my_sheet')
ws["A1"]=1
ws["A2"]=2
ws["A3"]=3
ws["B1"]=4
ws["B2"]=5
ws["B3"]=6
ws["C1"]=7
ws["C2"]=8
ws["C3"]=9
# 操作单列
print(ws['A'])
for cell in ws['A']:
print(cell.value)
print('===========')
# 操作多列
for column in ws['A:C']:
for cell in column:
print(cell.value)
print('===========')
# 操作多行
print(ws[1:3])
for row in ws[1:3]:
for cell in row:
print(cell.value)
print('===========')
print("===指定行列====")
for row in ws.iter_rows(min_row=1, min_col=1, max_col=3, max_row=3):
for cell in row:
print(cell.value)
print('===========')
# 操作所有行
print(ws.rows)
for row in ws.rows:
print(row)
#操作所有列
print(ws.columns)
for col in ws.columns:
print(col)

5、操作存在的文件

from openpyxl import Workbook
from openpyxl import load_workbook
wb = load_workbook("sample_demo.xlsx")
ws = wb.active
ws['a1'] = '' # ws['a1'].value = '333'效果一样
print(ws['a1'].value)

python3-常用模块之openpyxl(1)的更多相关文章

  1. python3 常用模块详解

    这里是python3的一些常用模块的用法详解,大家可以在这里找到它们. Python3 循环语句 python中模块sys与os的一些常用方法 Python3字符串 详解 Python3之时间模块详述 ...

  2. python3 常用模块

    一.time与datetime模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们 ...

  3. Python3常用模块的安装

    1.mysql驱动:mysql-connector-python 1.安装 $ pip3 install mysql-connector-python --allow-external mysql-c ...

  4. Python3 常用模块3

    目录 numpy模块 创建numpy数组 numpy数组的属性和用法 matplotlib模块 条形图 直方图 折线图 散点图 + 直线图 pandas模块 numpy模块 numpy模块可以用来做数 ...

  5. Python3 常用模块2

    目录 time 模块 时间戳形式 格式化时间 结构化时间 time.time() time.sleep() datetime 模块 random 模块 hashlib 模块 和 hmac 模块 typ ...

  6. Python3 常用模块1

    目录 os模块 对文件夹操作 对文件进行操作 sys模块 json 和pickle模块 logging模块 日志等级 longging模块的四大组件 自定义配置 os模块 通过os模块我们可以与操作系 ...

  7. 常用模块 - openpyxl模块

    一.简介 xlrd/xlwt 主要是针对Office 2003或更早版本的XLS文件格式 缺点:不支持XLSX文件格式 OpenPyXL 能读能写能修改 缺点:不支持XLS Microsoft Exc ...

  8. Python3基础(5)常用模块:time、datetime、random、os、sys、shutil、shelve、xml处理、ConfigParser、hashlib、re

    ---------------个人学习笔记--------------- ----------------本文作者吴疆-------------- ------点击此处链接至博客园原文------ 1 ...

  9. Python3基础笔记--常用模块

    目录: 参考博客:Python 之路 Day5 - 常用模块学习 Py西游攻关之模块 一.time模块 二.random模块 三.os模块 四.sys模块 五.hashlib模块 六.logging模 ...

  10. day--6_python常用模块

    常用模块: time和datetime shutil模块 radom string shelve模块 xml处理 configparser处理 hashlib subprocess logging模块 ...

随机推荐

  1. 针对Java集合类的小总结

    Java集合类包位于java.util下,有很多常用的数据结构:数组.链表.队列.栈.哈希表等等.了解不同的集合类的特性在开发过程中是比较重要的,感谢@兰亭风雨的专栏分析,这里我也根据自己的理解做轻度 ...

  2. cpu子系统(优化)

    如果业务已经在线上,你要优化,第一步如何做 首先进行服务器数据采集,和性能监测分析 一:使用cacti,nagios,zabbix 等监控工具 二:使用linux 自带的一些监控指令:vmstat,i ...

  3. JMeter设置响应数据的编码格式

    1.修改配置文件jmeter.properties第974行,默认编码格式为ISO-8859-1,手动修改为UTF-8 2.增加元器件 在线程组右键,添加->后置处理器->BeanShel ...

  4. Spring Boot环境搭建。

    1.环境准备. jdk1.8 idea(如果不会激活可以看另外一篇:https://www.cnblogs.com/joeking/p/11119123.html) 2.打开idea 如果是idea的 ...

  5. 一个切图仔的HTML笔记

    1,href="javascript:history.back(-1)" //页面返回上一步 2,meta信息设置 360浏览器就会在读取到这个标签后,立即切换对应的极速核. &l ...

  6. SQL Server Download

    { https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads }

  7. 树形dp经典换根法——cf1187E

    假设以u为根时结果是tot,现在转换到了以u的儿子v为根,那么结果变成了tot-size[v]+(sizetot-size[v]) 根据这个转移方程,先求出以1为根的tot,然后dfs一次转移即可 # ...

  8. 计算几何——圆卡精度cf1059D

    double 在1e17以后就不能顾及小数,所以用一下加精度的技巧 sqrt(r*r-d*d)=sqrt(r+d)*sqrt(r-d) 遇到误差在几位以内的注意要修改二分的精度,用最大的数据去乘以精度 ...

  9. BZOJ 1010 (HNOI 2008) 玩具装箱

    1010: [HNOI2008]玩具装箱toy Time Limit: 1 Sec Memory Limit: 162 MB Submit: 12665 Solved: 5540 [Submit][S ...

  10. Centos7 下修改日期

    Centos7 下修改日期 2017年11月19日 19:37:47 harris135 阅读数:2851    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csd ...