我已经在Win7(x64)中为Python中的所有项目安装了Python 3.5.1。
我使用PyCharm 5.0.5社区版开发Python脚本,其默认设置有"默认项目解释器"作为"3.5.1 (C:\Python35\python.exe)"
在我的工作中,我们正在从MS Office 2007/2010迁移到LibreOffice-5。我在VBA中写了一些宏,尽管我并不热衷于VB。 Basic缺乏良好的数据结构,例如列表(我喜欢列表理解),词典,集合和元组。所以,我想重写LibreOffice-5 Python脚本宏中的VBA宏。
LibreOffice-5安装在"C:\Program Files (x86)\LibreOffice 5\program"
版本3.3.5中有自己的嵌入式Python。 LibreOffice-5安装中的Python脚本位于:
"C:\Program Files (x86)\LibreOffice 5\share\Scripts\python"
"C:\Users\trimax\AppData\Roaming\LibreOffice\4\user\Scripts\python"
问题很简单:
我需要配置PyCharm设置来使用嵌入的python版本开发LibreOffice宏的python脚本。我不知道是否需要设置虚拟环境,或者我是否可以设置项目解释器。
顺便说一句,是否有任何方法可以在文档中插入宏,与文档共享,作为VBA项目模块?
答案 0 :(得分:4)
从PyCharm documentation来看,听起来你可以在两个不同的项目中使用虚拟环境来定位LibreOffice(可能是Python 3)和OpenOffice(可能是Python 2)。否则它看起来像是一个本地解释器就足够了。
为了测试PyCharm,我做了以下事情:
Add Local
。浏览到C:\Program Files (x86)\LibreOffice 5\program\python.exe
。然后添加此代码:
import uno
from com.sun.star.awt import Point
p = Point(2,3)
print(p.X)
points = uno.Any("[]com.sun.star.awt.Point", (p,))
print(repr(points))
它强调了com
import语句,尽管它实际上并不是一个错误。 PyCharm确实认可了uno.Any
等其他陈述。
要运行,请转到Run -> Run
。它成功运行并按预期打印结果。
我通常只使用文本编辑器而不是IDE。从我所看到的,很多IDE工具(语法高亮,自动完成,调试)无论如何都不能很好地与UNO一起工作。使用Java更好,但这是一个不同的主题。
顺便问一下,是否有任何方法可以在文档中插入宏,与文档[...]共享?
要将Python代码嵌入到文档中,请解压缩.odt文件并按照here的说明进行操作。