欢迎大家来到IT世界,在知识的湖畔探索吧!
2.Python4Lazarus入门
Lazarus = 一种出色的面向对象语言,以及出色的 RAD 环境和框架。可以在 Lazarus 中构建出色的 GUI,它们运行速度非常快并且可执行文件占用空间很小。也可以在 linux 上运行。
Python = 语法极简,由于其直截了当的语法而迅速普及。Python 程序员社区的成员对其兴趣非常高,致力于为 Python 开发丰富、高质量、开源的类库。
2.1 Python for Lazarus 简介
Python for Lazarus 是一组将 Python 动态链接库封装到 Lazarus 中的组件。可以让 Lazarus 程序员轻松执行 Python 脚本、创建新的 Python 模块和新的 Python 类型。也可以将 Python 扩展创建为动态链接库等,包括能够在 python 中创建类并让 Lazarus 像使用原生 Object Pascal 类一样使用这些类!
在 python 中创建类并让 Lazarus 使用这些类,就好像它们是原生的 Object Pascal 类一样。优点是:
- Python 可以做所有的业务逻辑和繁重的工作,而 Lazarus 可以用于 GUI 和应用程序框架等。
- Oython中的交互式 shell 和快速的开发时间使得在这里构建业务逻辑。定义您的类并构建所有有效的单元。仅将 Lazarus 用于 GUI。
2.2 Python for Lazarus 安装
- 下载 Python for Lazarus
在Lazarus 中,选择”Package” -> “Online Package Manager”,如下图:
在 “Filter by” 中输入 “python”,此时会在下方的 Packages 列表中显示 Python for Lazarus,勾选此项,点击下面的 “Download” 按钮。
2.将下载的 Python for Lazarus 解压缩,然后选择 “Package” -> “Open package file(.lpk)”,打开相应的 lpk 文件。如下图:
选择 “Use” -> “Install” ,即可完成安装。安装完成后,重新启动 Lazarus,即可看到 Python 组件,如下图所示:
2.3 Python for Lazarus 环境配置
对于 Python for Lazarus,应用程序必须在 Windows 上使用可移植 Python,在 Linux/Mac 上使用系统 Python。
本文我们对 Windows 环境下的配置进一步说明, 在 Windows 上,需要将文件复制到应用文件夹。
1.在官方网站 Python.org 上获取 Python 的嵌入文件:
- 用于 32 位应用程序的“Windows x86 可嵌入 zip 文件”
- 用于 64 位应用程序的“Windows x86-64 可嵌入 zip 文件”
2.将 Python 版本的文件:*.dll、*.pyd、python*.zip 复制到应用程序所在文件夹。
3.必须更改 Python 版本的 Lazarus 组件属性:DllName 和/或 DllPath。
2.4 Python for Lazarus 组件
- TPythonEngine
- TPythonInputOutput
- TPythonType
- TPythonModule
- TPythonDelphiVar
- TPythonGUIInputOutput
2.5 基本使用
我们通过示例来说明 Python for Lazarus 的基本使用方法。
示例: 向 python 解释器发送代码字符串并接收 Python 标准输出。
1. 创建一个 Application 应用程序项目
2. 将 Python 版本的*.dll、*.pyd、python*.zip 复制到应用程序所在文件夹。(注:版本匹配,我使用的是3.10.5)
3. 拖放一个 Memo 组件到窗体上
4. 拖放一个 PythonGUIInputOutput 组件到窗体上,用于显示 Python 的消息
5. 拖放一个 PythonEngine 组件到窗体上。
界面如下图:
6. 设置各个组件的属性
组件 |
属性 |
值 |
PythonEngine1 |
IO |
PythonGUIInputOutput1 |
PythonGUIInputOutput1 |
Output |
Memo2 |
Button1 |
Caption |
执行 |
Memo1 |
Lines |
” |
Memo2 |
Lines |
” |
7. 编写 Button1 的 OnClick 事件,代码如下:
procedure TForm1.Button1Click(Sender: TObject); begin PythonEngine1.ExecStrings( Memo1.Lines ); end;
欢迎大家来到IT世界,在知识的湖畔探索吧!
8. 执行应用程序,测试如下:
在 Memo1 中输入一些 Python 代码,点击执行,即可在 Memo2 看到 Python 解释器的输出。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/96722.html