#python #winapi
#питон #winapi
Вопрос:
Я пытаюсь написать df в документ Word с помощью следующего кода:
import win32api import win32 # data frame wordApp = win32.gencache.EnsureDispatch('Word.Application') wordApp.Visible = False doc = wordApp.Documents.Open(os.getcwd() '\template.docx') rng = doc.Bookmarks("PUTTABLEHERE").Range # creating Table # add one more row in table at word because you want to add column names as header Table=rng.Tables.Add(rng,NumRows=df.shape[0] 1,NumColumns=df.shape[1]) for col in range(df.shape[1]): # Writing column names Table.Cell(1,col 1).Range.Text=str(df.columns[col]) for row in range(df.shape[0]): # writing each value of data frame Table.Cell(row 1 1,col 1).Range.Text=str(df.iloc[row,col])
Однако я получаю следующую ошибку:
--------------------------------------------------------------------------- AttributeError Traceback (most recent call last) lt;ipython-input-32-b3ea6c24ddfegt; in lt;modulegt; 1 # data frame ----gt; 2 wordApp = win32.gencache.EnsureDispatch('Word.Application') 3 wordApp.Visible = False 4 doc = wordApp.Documents.Open(os.getcwd() '\template.docx') 5 rng = doc.Bookmarks("PUTTABLEHERE").Range AttributeError: module 'win32' has no attribute 'gencache'
Что я делаю не так?
Комментарии:
1. Где это
win32
определено?2. @Axe319 , спасибо, отредактировал, однако все та же ошибка..
3. Вы, вероятно, намеревались использовать
import win32com.client as win32
.4. Спасибо, чувак, это все исправило!