使用python编写word

2024-05-08 19:59:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我用下面的代码从一个文本文件在msword上写,但它没有写行。我也不能设置从它的页面宽度和高度。我用过wordapp.PageSetup.width但它引发了错误。 请告诉我哪里失败了。。在

import win32com.client
read = open('out.txt','r')
curser = read.readlines()

wordapp = win32com.client.Dispatch("Word.Application") 
wordapp.Visible = 0 
x = wordapp.Documents.Add() 
x.PageSetup.Orientation = 1 # Make some Setup to the Document:
x.PageSetup.LeftMargin = 0.4
x.PageSetup.TopMargin = 0.5
x.PageSetup.Width = 8.27 #This threw an error
x.PageSetup.BottomMargin = 0.5
x.PageSetup.RightMargin = 0.4
x.Content.Font.Size = 11
x.Content.Paragraphs.TabStops.Add (100)
x.Content.Text = curser #This threw an error
x.Content.MoveEnd
x.Close() # Close the Word Document (a save-Dialog pops up)
x.Quit() # Close the Word Application

Tags: theclientaddclosereadapplicationcontentthis
1条回答
网友
1楼 · 发布于 2024-05-08 19:59:21

Python接口使用microsoftoffice应用程序的标准API接口,因此您需要知道的所有信息都可以在http://msdn.microsoft.com/en-us/library/office/ff835409.aspx上找到。在

快速浏览一下就会发现您要查找的属性不是PageSetup.Width,它应该是^{}。我没有检查,但我猜你的“curser”问题是相同的x.Content.Text可能只是不作为属性存在。在

你所做的被称为“Cargo Cult Programming”,也就是说,你输入命令时并不真正知道它们做了什么,也没有查找它们,而是依赖于其他“有效的代码”(我猜是从The Python Script Collection这样的资源复制的),重复命令中看似相关的部分,并在执行过程中弥补任何丢失的属性。在

这是学习的推荐方法。在

相关问题 更多 >