Sign in Join
Wiki copytemporary

Python4Delphi/ru

English · Русский

Обзор

Домашняя страница: https://code.google.com/p/python4delphi/

С этой страницы:

Питон для Дельфи (Python for Delphi — P4D) это набор свободных компонентов, которые заворачивают dll Питона в Дельфи и Лазарус (FPC). Они позволяют легко выполнять скрипты Питона, создавать новые модули Питона и новые типы. Можно создавать расширения Питон в виде dll и многое другое. P4D предлагает разные уровни функциональности:

  • Низкоуровневый доступ к API Питона
  • Высокоуровневое двунаправленное взаимодействие с Питоном
  • Доступ к объектам Питона, используя тип Дельфи Variant (VarPyth.pas)
  • Заворачивание объектов Дельфи для использования в скриптах Питона с помощью RTTI (WrapDelphi.pas)

P4D упрощает использование Питона в качестве скриптового языка для приложений Дельфи.

changelog датирует последние доработки ноябрём 2012г.

Коммит от 21.1.2018 объявляет о совместимости как с Лазарус так и (надеюсь) с Дельфи Линукс.

Порт для Лазарус

Порт для Лазарус: Использование Питона в Лазарус под Windows/Linux

Смотрите ещё

FreeBSD

Я смог заставить работать это на FreeBSD не используя компоненты времени разработки в Лазарус:

pascal
program simplefpcdemo;
uses PythonEngine, dynlibs;

var eng : TPythonEngine;
begin
  eng := TPythonEngine.Create(Nil);
  eng.LoadDll;
  if eng.IsHandleValid then
    begin
      WriteLn(' evens: ', eng.EvalStringAsStr('[x*2 for x in range(10)]'));
      eng.ExecString('print "powers:", [x**2 for x in range(10)]');
    end
  else writeln('invalid library handle!', dynlibs.GetLoadErrorStr);
end.

The output:

pascal
evens: [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
pascal
powers: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

Моя персональная рабочая копия (включая обёртку Питона для моей последней библиотеки) — https://github.com/tangentstorm/py4d .


From the Free Pascal wiki, page "Python4Delphi/ru", as it stood on 2023-06-03 after a change by AMXS52, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

Revision 1, last changed by WikiArchive .

Talk about this page

Nobody has opened a bench for this page yet. Sign in to open one.