在一个脚本中,当变量是Document类型时,我想运行某些行。2但是这个检查总是返回false,不管输入是什么。
from docx import Document
from docx import Document as _Document
document = Document('use_this_doc.docx')
isinstance (document, _Document)
type(document)
返回docx.document.Document
isinstance(document, _Document)
返回False
,而我期望它返回True
。isinstance(document, type(Document))
也返回False
。
如何调整代码,使其在指定的情况下返回True?
1条答案
按热度按时间mzaanser1#
Document()
是一个用于打开文档的辅助函数(不是class
)。开发人员没有遵循PEP8命名约定,而是使用了类命名函数。它返回一个docx.document.Document
类型的对象。呼叫
isinstance(document, Document)
会产生错误,因为第二个参数必须是型别。输出: