0
tkinter 응용 프로그램에서 질문을하고 입력 내용을 기반으로 자리 표시 자 텍스트를 항목으로 바꾸어서 단어 파일을 편집하는 프로젝트를 진행하고 있습니다. '문서'에 '쓰기'속성이없는 오류가 발생했습니다.Python Docx 및 Tkinter 'Document'에 'write'속성이 없습니다.
텍스트에서 자리 표시자가 아닌 다른 것을 검색하면 스크립트가 작동하고 창이 표시됩니다. 그러나 내 자리 표시자가 텍스트에있는 경우 통역사는 필자가 필 요한 것으로 생각하는 것과 관련하여 문제가 발생합니다. 최근에 수업을 사용하여 프로그램을 다시 작성했으며 그 전에는 수업에 참여했습니다. 초기화 기능이 누락 되었습니까?
classes.py
from tkinter import *
from docx import Document
import os
os.chdir("\\Users\\Nick\Desktop")
doc = Document('TemplateTest.docx')
paragraphs = doc.paragraphs
class WebWindow:
def __init__(self, master):
self.master = master
master.title("NAV Report")
self.label = Label(master, text="This is our first GUI!")
self.label.pack()
self.entry = Entry(master, text="Enter")
self.entry.pack()
self.close_button = Button(master, text="Close", command=master.quit)
self.close_button.pack()
self.submit = Button(master, text="Submit", command=self.WebsiteChange())
self.submit.pack()
def WebsiteChange(self):
for paragraph in doc.paragraphs:
if '^Websitename' in paragraph.text:
paragraph.text = self.entry.get()
print(paragraph.text)
doc.save(doc)
pass
print ("test")
root = Tk()
WebWindow(root)
root.mainloop()
인수를 저장
Traceback (most recent call last):
File "C:/Users/Nick/PycharmProjects/classes/class.py", line 36, in <module>
WebWindow(root)
File "C:/Users/Nick/PycharmProjects/classes/class.py", line 22, in __init__
self.submit = Button(master, text="Submit", command=self.WebsiteChange())
File "C:/Users/Nick/PycharmProjects/classes/class.py", line 31, in WebsiteChange
doc.save(doc)
File "C:\Users\Nick\AppData\Local\Programs\Python\Python35-32\lib\site-packages\docx\document.py", line 142, in save
self._part.save(path_or_stream)
File "C:\Users\Nick\AppData\Local\Programs\Python\Python35-32\lib\site-packages\docx\parts\document.py", line 129, in save
self.package.save(path_or_stream)
File "C:\Users\Nick\AppData\Local\Programs\Python\Python35-32\lib\site-packages\docx\opc\package.py", line 160, in save
PackageWriter.write(pkg_file, self.rels, self.parts)
File "C:\Users\Nick\AppData\Local\Programs\Python\Python35-32\lib\site-packages\docx\opc\pkgwriter.py", line 33, in write
PackageWriter._write_content_types_stream(phys_writer, parts)
File "C:\Users\Nick\AppData\Local\Programs\Python\Python35-32\lib\site-packages\docx\opc\pkgwriter.py", line 45, in _write_content_types_stream
phys_writer.write(CONTENT_TYPES_URI, cti.blob)
File "C:\Users\Nick\AppData\Local\Programs\Python\Python35-32\lib\site-packages\docx\opc\phys_pkg.py", line 155, in write
self._zipf.writestr(pack_uri.membername, blob)
File "C:\Users\Nick\AppData\Local\Programs\Python\Python35-32\lib\zipfile.py", line 1581, in writestr
self.fp.write(zinfo.FileHeader(zip64))
File "C:\Users\Nick\AppData\Local\Programs\Python\Python35-32\lib\zipfile.py", line 680, in write
n = self.fp.write(data)
AttributeError: 'Document' object has no attribute 'write'
Exception ignored in: <bound method ZipFile.__del__ of <zipfile.ZipFile [closed]>>
Traceback (most recent call last):
File "C:\Users\Nick\AppData\Local\Programs\Python\Python35-32\lib\zipfile.py", line 1595, in __del__
self.close()
File "C:\Users\Nick\AppData\Local\Programs\Python\Python35-32\lib\zipfile.py", line 1608, in close
self._write_end_record()
File "C:\Users\Nick\AppData\Local\Programs\Python\Python35-32\lib\zipfile.py", line 1711, in _write_end_record
self.fp.write(endrec)
File "C:\Users\Nick\AppData\Local\Programs\Python\Python35-32\lib\zipfile.py", line 680, in write
n = self.fp.write(data)
AttributeError: 'Document' object has no attribute 'write'
! 나는 이해하지 못한다. 왜 내가 doc = Document ('TemplateTest.docx')를했을 때 변수로 이미 설정했다면 파일 이름을 사용해야 만 하는가? 나는 단지 파일 이름을 사용하여 파일 이름을 호출해서는 안된다. 변수? – nvinger