openpyxl是一个第三方库,可以处理xlsx格式的Excel文件。

安装:

pip install openpyxl

对如下excel进行读取操作,如图:

from openpyxl import load_workbook

wb = load_workbook("123.xlsx")
print(wb.get_sheet_names())
#>>>[Sheet111,Sheet222,Sheet333] a_sheet = wb.get_sheet_by_name("Sheet111")
print(a_sheet.title)
#>>>Sheet111 a1 = a_sheet['A1']
print(f'({a1.column}, {a1.row}) is {a1.value}')
#>>>3 a1_too =a_sheet.cell(row = 4, column = 2)
print(a1_too.value)
#>>>fvf # 获得最大列和最大行
print(a_sheet.max_row)
#>>>6
print(a_sheet.max_column)
#>>>4 for row in a_sheet.rows:
for cell in row:
print(cell.value,end = '\t')
print('\n') '''
>>>
3 3 None None 4 None None None 5 None fv fv 6 fvf None None 7 None None None 909 None None None
''' #获取某一行或者某一列的数据
for cell in list(a_sheet.rows)[3]:
print(cell.value,end = "\t")
#>>>6 fvf None None #获取任意区间的单元格
for i in range(2, 4):
for j in range(1, 3):
print(a_sheet.cell(row=i, column=j).value,end = "\t")
#>>>4 None 5 None

对文件的写入操作:

from openpyxl import Workbook

wb = Workbook()
ws = wb.active
#创建一张新的表
ws1 = wb.create_sheet("botoo") #写入数据
ws1["a1"]=10086
#或者
ws1["a2"].value= 1111111 #为B列创建数据 1~19
for i in range(1,20):
ws1["B%d" %i] .value= i #为20行创建数据 1~10
for i in range(1,20):
ws1.cell(column = i, row = 20).value = i wb.save("这是python写入3.xlsx")

效果如下:

*当需要对已有文件进行更改的时候,需要使用:

>>> from openpyxl import load_workbook

>>>wb2 = load_workbook('test.xlsx')

>>> print wb2.get_sheet_names()

['Sheet2', 'New Title', 'Sheet1']

否则文件内容会被覆盖。

参考文章:

http://openpyxl.readthedocs.io/en/stable/

https://blog.csdn.net/hunter_wyh/article/details/78498323

http://www.pythontab删去汉字.com/html/2018/pythonhexinbiancheng_0503/1286.html

(不知道为什么Python中文开发社区的链接放不上去)

python基础===Excel处理库openpyxl的更多相关文章

  1. 27.python中excel处理库openpyxl使用详解

    openpyxl是一个第三方库,可以处理xlsx格式的Excel文件.pip install openpyxl安装. 读取Excel文件 需要导入相关函数 ? 1 2 3 from openpyxl ...

  2. python操作Excel的库openpyxl

    http://openpyxl.readthedocs.io/en/default/tutorial.html 这里先上该库的文档镇文. 1,遇到合并后的单元格信息读取的问题,通过使用cell中off ...

  3. python处理Excel - xlrd xlwr openpyxl

    python处理Excel - xlrd xlwr openpyxl 1 xlrd和xlwt Todo: 使用xlrd和xlwt读写Excel文件的方法和示例代码,待续... 参考链接: Creati ...

  4. Python基础面试题库

    Python基础面试题库   Python是一门学习曲线较为容易的编程语言,随着人工智能时代的到来,Python迎来了新一轮的高潮.目前,国内知乎.网易(游戏).腾讯(某些网站).搜狐(邮箱).金山. ...

  5. python基础和编程库

    Python编程从入门到实践-------基础入门 1.Python中的变量 2.Python首字母大写使用title()方法,全部大写upper()方法,全部小写lower()方法 3.Python ...

  6. Python之excel第三方库xlrd和xlwt

    Python读取excel表格的库xlrd,首先安装xlrd: pip3 install xlrd 代码: #!usr/bin/env python3 #!-*-coding=utf-8 -*- '' ...

  7. Python 基础教程 —— Pandas 库常用方法实例说明

    目录 1. 常用方法 pandas.Series 2. pandas.DataFrame ([data],[index])   根据行建立数据 3. pandas.DataFrame ({dic})  ...

  8. Python基础语法题库

    引言: 语法练习包括Python基础语法.数据类型.字符编码和简单文件操作等内容. 正文(参考答案附录在题目下方): 1.Python 里用来告知解释器跳过当前循环中的剩余语句,然后继续进行下一轮循环 ...

  9. Python基础之第三方库gevent安装

    安装gevent库: 想要安装gevent库,我们需要确定pip版本: 使用 pip3 list: 我们可以发现pip版本为19.3.1,如果你们的pip版本不是最新版可以使用命令python -m ...

随机推荐

  1. bzoj4031-小Z的房间

    题目 给一个\(n\*m\)的矩阵,每个点可能为"."或"*",有多少种方法把矩阵中的点全部连接起来,并且每两个点之间只有一条路径. 分析 题目所求的是一个矩阵 ...

  2. OpenCV2.3.1在Win7+VS2010下的配置过程

    1.  假定电脑上已经安装了VS2010程序,若没有,首先安装vs2010.下载OpenCV2.3.1,网址:http://sourceforge.net/projects/opencvlibrary ...

  3. (转) Parameter estimation for text analysis 暨LDA学习小结

    Reading Note : Parameter estimation for text analysis 暨LDA学习小结 原文:http://www.xperseverance.net/blogs ...

  4. [洛谷P4550]收集邮票

    题目大意:有$n(n\leqslant10^4)$个物品,第$i$次会从这$n$个物品中随机获得一个,并付出$i$的代价,问获得所有的$n$个物品的代价的期望. 题解:令$f_i$表示现在已经获得了$ ...

  5. [SOJ #48]集合对称差卷积

    题目大意:给你两个多项式$A,B$,求多项式$C$使得: $$C_n=\sum\limits_{x\oplus y=n}A_xB_y$$题解:$FWT$ 卡点:无 C++ Code: #include ...

  6. SGU - 282

    SGU - 282 题解 题意: 本质不同的集合:不存在两个方案重新编号之后对应的边集相同(对于所有x,y,,(x,y)边颜色都相同). (1≤ N≤ 53, 1≤ M≤ 1000) 对P取模 本质不 ...

  7. Linux回收站(改写rm防止误删文件无法恢复)

    rm -rf 慎用 命令敲得多了,常在河边走,难免会湿鞋 昨天,一个手误,敲错了命令,把原本想要留的文件夹给rm -rf掉了 几天心血全木有了,靠,死的心都有了 经百度,google以及尝试无果,哎, ...

  8. SFM

    1.相机模型,内参数和外参数矩阵,相机标定: 2.极线约束和本征矩阵:特征点提取与匹配:提取到的特征点计算本征矩阵(五对以上的点)findEssentialMat(),需啊要点对,焦距参数,cx,cy ...

  9. HDU4513:吉哥系列故事——完美队形II(Manacher)

    吉哥系列故事——完美队形II Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)To ...

  10. Codeforces Round #514 (Div. 2):D. Nature Reserve(二分+数学)

    D. Nature Reserve 题目链接:https://codeforces.com/contest/1059/problem/D 题意: 在二维坐标平面上给出n个数的点,现在要求一个圆,能够容 ...