Embedded Python allows you to use Python as a fully supported alternative to InterSystems ObjectScript for creating InterSystems IRIS applications. When you write code in Embedded Python, it is compiled into object code that is interchangeable with compiled ObjectScript code. This allows for tighter integration than is possible with the InterSystems Python External Server or the Native SDK for Python.
The Python External Server
The Python External Server allows your ObjectScript code to generate a proxy object that controls a corresponding Python target object. You can then access methods and properties just as if you were using the Python object directly.
The Native SDK for Python
The Native SDK for Python is a lightweight interface that allows you to access many InterSystems IRIS features directly from your Python application. You can:
Call ObjectScript class methods or functions from your Python application as easily as you can call native Python methods.
Generate a proxy object in your Python application that creates and controls an ObjectScript object on the server. The Python proxy can call instance methods and get or set properties just as if you were using the server object directly.
Work with multidimensional global arrays (known in InterSystems IRIS simply as globals). You can create, read, change, and delete globals just as if you were using ObjectScript.
The Production EXtension (PEX)
The Production EXtension (PEX) framework allows you to use Python to develop custom components of an interoperability production, including adapters and business hosts. For productions, PEX is the standard way to interoperate with Python.
The Python ODBC Bridge (pyodbc)
The Python ODBC Bridge (pyodbc) allows you to use ODBC to connect to InterSystems IRIS by implementing the DB API 2.0 specification (PEP 249—Python Database API Specification v2.0), leveraging ODBC to access the underlying database.