如何使用openpyxl创建工作簿?

时间:2016-11-28 16:25:54

标签: python-3.x openpyxl

我在openpyxl模块上做一些学校工作。我试图创建一个基本的工作簿对象,并遇到一个问题,我仍然无法真正理清。我已经看过之前提出的错误问题,似乎其他人都使用相同的方法并且它已经有效,但我不知道为什么它不适合我。我浏览了openpyxl文档,仍然没有解决问题。这就是我所做的。

  
    
      

来自openpyxl导入工作簿       wb =工作簿()       Traceback(最近一次调用最后一次):       文件“”,第1行,in       TypeError:'module'对象不可调用

    
  

当我使用它时:

>>> wb = workbook

然后我得到类型:

>>> type(wb)
 <class 'module'>

但如果我试图让ws成为对象:

>>> ws = wb.active
 Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 AttributeError: module 'openpyxl.workbook' has no attribute 'active'

因为这次失败了我尝试了另一种选择:

>>> ws = wb.get_sheet_by_names
 Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 AttributeError: module 'openpyxl.workbook' has no attribute'get_sheet_by_names'

所以我试着用这个小代码做一个版本chec:

import openpyxl
from openpyxl import workbook

if openpyxl.__version__ == '2.4.1':
    print('Openpyxl is ' + str(openpyxl.__version__) + ' then its up to     date')
if openpyxl.__version__ != '2.4.1':
    print('Openpyxl is ' + str(openpyxl.__version__))

所以看起来我使用的所有代码似乎都是正确的代码,但是在我的深度下将无法回归。我真的不知道最近发生了什么。有人会帮忙吗?提前谢谢。

2 个答案:

答案 0 :(得分:0)

您正在尝试使用模块 workbook,例如 WorkbookWorkbookopenpyxl.workbook模块中的一个类,需要相应地导入。注意到Workbookworkbook的大写差异。 Python区分大小写,这意味着Workbookworkbook是两个不同的实例

from openpyxl.workbook import Workbook, workbook

print(type(Workbook))
>>> <class 'type'>

print(type(workbook))
>>> <class 'module'>

wb = Workbook()
print(type(wb))
>>> <class 'openpyxl.workbook.workbook.Workbook'>

答案 1 :(得分:0)

Python的casesensitivity充分利用了我。我使用的是小写而不是大写。