为什么我的 IDE 无法自动完成 python-docx?
why my IDE can't Auto-Complete for python-docx?
当我使用 python-docx 时,我的 IDE 和 pycharm wing 一样,无法自动完成它。
此代码
from docx import Document
asd = Document()
asd.add_heading("test")
asd.save("cao.docx")
当我输入 asd 时。 add_heading 无法自动完成。
from docx.document import Document
asd = Document()
asd.save()
this code can Auto-Complete
but atention
TypeError: init() 缺少 2 个必需的位置参数:'element' 和 'part'
对不起我的英语不好
在后一种情况下,您错误地导入了 docx.document.Document
而不是 docx.Document
。 docx.document
中的 Document
class 具有不同的呼叫签名,无论如何都不是您想要的:)
事实上,docx.Document(...)
实际上是一个方法,其中returns是docx.document.Document
的一个对象class。
(也许他们应该按照命名约定命名这个方法,比如docx.create_document(...))
因此,您应该使用以下两个导入,以获得 docx.document.Document
class 内容的可见性:
from docx import Document
from docx.document import Document
使用此解决方法可以在您的 IDE 中使用自动完成功能,而不是获得 TypeError: init() missing 2 required positional arguments: 'element' and 'part'
:
from docx.document import Document
try:
document = Document()
except TypeError:
from docx import Document
document = Document()
当我使用 python-docx 时,我的 IDE 和 pycharm wing 一样,无法自动完成它。 此代码
from docx import Document
asd = Document()
asd.add_heading("test")
asd.save("cao.docx")
当我输入 asd 时。 add_heading 无法自动完成。
from docx.document import Document
asd = Document()
asd.save()
this code can Auto-Complete
but atention
TypeError: init() 缺少 2 个必需的位置参数:'element' 和 'part'
对不起我的英语不好
在后一种情况下,您错误地导入了 docx.document.Document
而不是 docx.Document
。 docx.document
中的 Document
class 具有不同的呼叫签名,无论如何都不是您想要的:)
事实上,docx.Document(...)
实际上是一个方法,其中returns是docx.document.Document
的一个对象class。
(也许他们应该按照命名约定命名这个方法,比如docx.create_document(...))
因此,您应该使用以下两个导入,以获得 docx.document.Document
class 内容的可见性:
from docx import Document
from docx.document import Document
使用此解决方法可以在您的 IDE 中使用自动完成功能,而不是获得 TypeError: init() missing 2 required positional arguments: 'element' and 'part'
:
from docx.document import Document
try:
document = Document()
except TypeError:
from docx import Document
document = Document()