python如何获取多个excel单元格的值,pythonexcel,一. 获取多个单元格
python如何获取多个excel单元格的值,pythonexcel,一. 获取多个单元格
一. 获取多个单元格的值报错:AttributeError: ‘tuple‘ object has no attribute ‘value‘
需要读取的sample.xlsx
代码读取的是A3:B10之间的单元格
from openpyxl import load_workbookwb = load_workbook(r"D:\python_workshop\python6\study\sample.xlsx")sh = wb["Sheet"]print(sh["A3":"B10"].value)运行结果:Traceback (most recent call last): File "D:/python_workshop/python6/study/demo.py", line 8, in <module> print(sh["A3":"B10"].value)AttributeError: ‘tuple‘ object has no attribute ‘value‘
二. 如何解决
上面报错信息是,元组对象没有属性"value",我们先来看一下print(sh["A2":"B10"]),得到的是一个元组,比较有意思的是,元组中的每一项也是一个元组,这个元组里存储的是每一行的单元格对象:相当于 元组(A3: B10) ——> 第三行:元组(A3: B3),第四行:元组(A4: B4)...第十行:元组(A10: B10)——>每一个单元格对象
print(sh["A3":"B10"])运行结果:((<Cell ‘Sheet‘.A3>, <Cell ‘Sheet‘.B3>), (<Cell ‘Sheet‘.A4>, <Cell ‘Sheet‘.B4>), (<Cell ‘Sheet‘.A5>, <Cell ‘Sheet‘.B5>), (<Cell ‘Sheet‘.A6>, <Cell ‘Sheet‘.B6>), (<Cell ‘Sheet‘.A7>, <Cell ‘Sheet‘.B7>), (<Cell ‘Sheet‘.A8>, <Cell ‘Sheet‘.B8>), (<Cell ‘Sheet‘.A9>, <Cell ‘Sheet‘.B9>), (<Cell ‘Sheet‘.A10>, <Cell ‘Sheet‘.B10>))
这种多层嵌套的形式,我们要想获得最里面单元格对象,就要用到双层for循环:
for item in sh["A3":"B10"]: #item表示每一行的单元格元组 for cell in item: #cell表示每一行的每一个单元格对象 print(cell) #打印出每个单元格对象运行结果:<Cell ‘Sheet‘.A3><Cell ‘Sheet‘.B3><Cell ‘Sheet‘.A4><Cell ‘Sheet‘.B4><Cell ‘Sheet‘.A5><Cell ‘Sheet‘.B5><Cell ‘Sheet‘.A6><Cell ‘Sheet‘.B6><Cell ‘Sheet‘.A7><Cell ‘Sheet‘.B7><Cell ‘Sheet‘.A8><Cell ‘Sheet‘.B8><Cell ‘Sheet‘.A9><Cell ‘Sheet‘.B9><Cell ‘Sheet‘.A10><Cell ‘Sheet‘.B10>
得到单元格对象就好办了,只需要单元格对象.value,我们就可以获取单元格值。试试按照excel中的形式打印,得到的结果看起来很美观:
#用enumerate包装一个可迭代对象,可以同时使用索引和迭代项,在迭代的同时获取迭代项所在位置时非常方便for index, item in enumerate(sh["A3":"B10"]): if index > 0: print("\n") for cell in item: print(cell.value, end=" ")运行结果:2018-05-10 电影 hello world 小说 hi 数据 stop 美团 bike 花生 中国 电视 测试 连续剧 深圳 广告
python如何获取多个excel单元格的值
相关内容
- Python基本知识 os.path.join与split() 函数,pythonos.path.join
- python爬虫--模拟登录知乎,python爬虫--,1、处理登录表单
- python的强制转换(当出现 not supported between instances of
- Python的X[y==1, 0],python,最近研究逻辑回归,I
- 第三百五十四节,Python分布式爬虫打造搜索引擎Scrapy精
- python爬虫笔记之re.IGNORECASE,, re.IGNO
- Pycharm+Python+PyQt5使用,pycharmpyqt5,转载自http://
- 【bugRecord4】Fatal error in launcher: Unable to create process usi
- python模块之openpyxl,pythonopenpyxl,这是一个第三方库,可
- Python条件语句,python语句,Python条件语句
评论关闭