Call Python Library Functions

Examples and concepts to help you quickly get started using Python® in MATLAB®

To call Python libraries from MATLAB, install a supported version of the reference implementation (CPython) for Python. MATLAB supports versions 2.7, 3.6, and 3.7. The version you install depends on the libraries you are using. For information, see Install Supported Python Implementation.

To call a Python function, type py. in front of the module name and function name. Pass MATLAB data as arguments to Python functions; MATLAB converts the data into types that best represent the data to the Python language. For example, py.os.listdir('.') lists the contents of the current folder.

MATLAB automatically loads Python when you type py.command. You cannot change the interpreter after MATLAB loads Python. To change the interpreter, restart MATLAB, and then call pyenv.

To call functions in third-party libraries that are not compatible with MATLAB, see Out-of-Process Execution of Python Functionality.

For help on the Python language, see For help on third-party or user-defined modules, refer to the product documentation.

To call MATLAB functions from Python applications, see Calling MATLAB from Python.


pyenvChange default environment of Python interpreter


PythonEnvironmentPython environment information


matlab.exception.PyExceptionCapture error information for Python exception


System and Configuration Requirements

How to verify you have installed a supported version of Python.

Create a Python Object

Different behaviors between MATLAB variables and Python objects.

Help for Python Functions

How to find help for Python functions.

Understanding Python and MATLAB import Commands

How to use Python import statements and MATLAB import commands.

Call User-Defined Python Module

Create a Python module used by examples in this documentation.

Reload Modified User-Defined Python Module

This example shows how to reload a modified Python module.

Install Supported Python Implementation

How to install a supported version of Python from the website.


Limitations to Python Support

Python features not supported in MATLAB.

Undefined variable "py" or function "py.command"

Troubleshooting failures loading Python.

Unsupported MATLAB Types

MATLAB types that are not supported in Python.

Using Python Data in MATLAB

Python types that do not have compatible MATLAB types.

Troubleshooting Multidimensional Array Argument Errors

Error might be caused by input array with more than one non-singleton dimension.

Limitations to Indexing into Python Objects

Indexing features not supported in MATLAB.

Handle Python Exceptions

MATLAB catches exceptions thrown by Python and converts them into a matlab.exception.PyException object.

Troubleshooting Error Messages

Tips to determine if an error originates in Python or MATLAB code.