什么是最好的方式来看看可以使用pythoncom模块执行的所有功能? 具体来说,我正在使用win32com模块来操作excel文件。与其他模块一样,我无法找到它的反思。 任何人都可以请建议如何检索这些信息?Win32com模块/ pythoncom模块的自省
回答
win32com
模块不提供直接操作Excel电子表格的功能。相反,它提供了一个功能来获取Excel电子表格对象。从这个对象,你可以然后操纵在面向对象的方式电子表格:
import win32com.client
excel = win32com.client.Dispatch("Excel.Application")
的方法和适用于excel
性能可以Application Object文档中找到,该Excel Object Model Reference在MSDN的一部分。
例如,文件表明,一个Application
对象具有Workbooks
property:
workbooks = excel.Workbooks
的Workbooks
collection有一个Open
method:
workbook = workbooks.Open("C:\\something.xls")
您现在可以使用Workbook
documentation操纵该工作簿!
正如您所看到的,使用win32com的工作非常接近MSDN文档。 :)
运行\ lib \ site-packages \ win32com \ client中的make.py文件。
当你运行它,一个对话框出现显示已安装的COM对象...选择一个为Excel Ojbect库,你会得到这样的事情:
c:\Python26\Lib\site-packages\win32com\client>makepy.py
Generating to C:\Python26\lib\site-packages\win32com\gen_py\00020813-0000-0000-C
000-000000000046x9x1x0.py
Building definitions from type library...
Generating...
Importing module
现在当你调用win32com。客户端.Dispatch在Excel上,您获取的对象将具有支持反省的属性(来自在运行上述步骤时创建的文件)。这基本上是创建COM对象的早期版本。
此主题在Mark Hammond的“Win32上的Python编程”中有详细介绍。这是一本旧书,但仍然非常有用! http://www.amazon.com/Python-Programming-WIN32-Windows-Programmers/dp/1565926218
不知道我是否做错了,但内省似乎涉及在对象中查找_prop_map_get_和_prop_map_put_而不是通常的Pythonic内省运算符。 – Dragon 2016-06-15 11:41:26
- 1. Python win32com模块:CompareDocuments
- 2. ImportError:没有名为pythoncom的模块
- 3. 使用win32com模块的CPython的RegFree DLL
- 4. Yii2模块模块
- 5. 如何导入pythoncom模块?我安装了py32win.exe
- 6. 模块自定义模板
- 7. QBS:模块与子模块
- 8. Boost.Python:模块内部模块
- 9. 找不到我自己的模块的流程模块
- 10. Node.js的自定义模块
- 11. Zend的自定义模块
- 12. Joomla的自定义模块
- 13. es6模块'模块'的名称相当于'模块'?
- 14. 子模块内部的Git子模块(嵌套子模块)
- 15. 的Verilog,模块实例化与来自不同模块
- 16. CSS模块 - 引用来自其他模块的类
- 17. 阴影网站模块,通过我自己的模块在Python
- 18. 创建新的模块,继承自定制模块
- 19. 来自状态模块内的呼叫状态模块
- 20. Pyinstaller为自己创建的模块导入模块
- 21. 在主模块中找不到来自库模块的包
- 22. 调用子模块中的模块
- 23. Rust中的模块和嵌套模块
- 24. Netbeans模块中的JAXB模块
- 25. 的Maven(多模块项目) - 模块
- 26. 获取模块模块 - Python的
- 27. Pypi模块的模块导入错误
- 28. 从oustide模块访问的模块
- 29. 的Marketo模块 - 无效模块
- 30. 运行其他模块的VBA模块
这看起来似乎直接从Mark Hammond的Python win32书中复制过来。 – GTM 2010-03-11 18:54:28
@GTM:哦?我*希望*当我知道这件事时,我知道有关于Python的win32的书! :)我可以向你保证,我没有复制这个。 – 2010-03-12 23:14:44