Python3,使用openpyxl读取单元格
Python3, using openpyxl to read cells
谢谢Tc Zhong 的帮助!打印值的正确方法是 print(cell[0].value)
---------这里是原题-----------------
我目前正在学习 python 从 xlsx 格式的电子表格中读取信息,并且我下载了 openpyxl。这是我的功能:
from openpyxl import load_workbook
book = load_workbook(filename = 'List.xlsx', data_only = True)
lst = book.active
def give_cell (workbook, start: str, end: str):
cell_range = workbook[start:end]
for cells in cell_range:
print (cells.value)
当我 运行 这个在我的 python shell:
give_cell(lst, 'D3', 'D5')
Traceback (most recent call last):
Python Shell, prompt 2, line 1
File "/Users/Sophie/Documents/google search", line 7, in <module>
print (cells.value)
builtins.AttributeError: 'tuple' object has no attribute 'value'
它告诉我“元组”对象没有属性 'value',但我不明白为什么它没有属性 'value',或者为什么 'print(cells.value)' 不起作用.我最初尝试了 print(cells),但它不会 return 单元格中的值,而是类似于
(<Cell 'lst'.D3>,)
(<Cell 'lst'.D4>,)
(<Cell 'lst'.D5>,)
我不太确定发生了什么。感谢您的帮助!
如图所示,它是一个元组,你需要使用cells[0].value
来访问这个元组的第一个元素。
谢谢Tc Zhong 的帮助!打印值的正确方法是 print(cell[0].value)
---------这里是原题-----------------
我目前正在学习 python 从 xlsx 格式的电子表格中读取信息,并且我下载了 openpyxl。这是我的功能:
from openpyxl import load_workbook
book = load_workbook(filename = 'List.xlsx', data_only = True)
lst = book.active
def give_cell (workbook, start: str, end: str):
cell_range = workbook[start:end]
for cells in cell_range:
print (cells.value)
当我 运行 这个在我的 python shell:
give_cell(lst, 'D3', 'D5')
Traceback (most recent call last):
Python Shell, prompt 2, line 1
File "/Users/Sophie/Documents/google search", line 7, in <module>
print (cells.value)
builtins.AttributeError: 'tuple' object has no attribute 'value'
它告诉我“元组”对象没有属性 'value',但我不明白为什么它没有属性 'value',或者为什么 'print(cells.value)' 不起作用.我最初尝试了 print(cells),但它不会 return 单元格中的值,而是类似于
(<Cell 'lst'.D3>,)
(<Cell 'lst'.D4>,)
(<Cell 'lst'.D5>,)
我不太确定发生了什么。感谢您的帮助!
如图所示,它是一个元组,你需要使用cells[0].value
来访问这个元组的第一个元素。