Python openpyxl 模块说 : AttributeError: 'tuple' object has no attribute 'upper'

标签 python tuples export-to-excel attributeerror openpyxl

安装了 Python 3.4 和模块 jdcalopenpyxl:

尝试使用 openpyxl 库从 Python 读取和写入 XLSX 文件。我安装了 jdcall 模块和 openpyxl 模块。代码让我创建工作簿和工作表:

from openpyxl import Workbook
wb  = Workbook()
ws  = wb.active

但是,如果我尝试像这样写入第一个单元格:

ws[ 1, 1]   = 'testing 1-2-3'

Python 说:

C:\Wolf\Python Studies>database.py
Traceback (most recent call last):
 File "C:\Wolf\Python Studies\database.py", line 13, in <module>
   ws[ 1, 1]   = 'testing 1-2-3'
 File "C:\Python34\lib\site-packages\openpyxl-2.2.0b1-py3.4.egg\openpyxl\worksheet\worksheet.py", line 403, in __setitem__
   self[key].value = value
 File "C:\Python34\lib\site-packages\openpyxl-2.2.0b1-py3.4.egg\openpyxl\worksheet\worksheet.py", line 400, in __getitem__ <BR>
   return self._get_cell(key)
 File "C:\Python34\lib\site-packages\openpyxl-2.2.0b1-py3.4.egg\openpyxl\worksheet\worksheet.py", line 368, in _get_cell
   coordinate = coordinate.upper()
AttributeError: 'tuple' object has no attribute 'upper'

C:\Wolf\Python Studies>

知道我做错了什么吗?

最佳答案

单元格坐标应作为字符串提供:

ws['A1'] = 'testing 1-2-3'

或者,如果您想使用行和列索引,请使用 ws.cell().value:

ws.cell(row=1, column=1).value = 'testing 1-2-3'

关于Python openpyxl 模块说 : AttributeError: 'tuple' object has no attribute 'upper' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28973755/

相关文章:

c# - 如何在单击按钮时立即将 dataGridView 数据导出到 Excel?

python - pyqt在滚动区域展开网格

Python 请求、CSV、Sha256 和 BOM

python - 字典的打印与返回功能

python - 不可变对象(immutable对象)的内存分配

c# - 使用 C# 将对象导出到 excel

python - 我可以恢复闭包包含 Python 循环的函数吗?

haskell - 如何将函数元组转换为发出元组的函数

sorting - haskell 排序

javascript - 如何将 HTML 表格导出到 Chrome 和 IE 支持的 Excel?