Python 3.11 is the newest release of the Python programming language, and it contains many new features and optimizations compared to its prior 3.10 version. So many third-party Python packages are upgrading to support the latest Python 3.11 version to take advantage of its latest features. To understand all the enhancements of Python 3.11, check out our blog post here. Also, any Python package must be able to help look up what a type/class and its attributes and methods do in terms of documentation. So we’re happy to announce that we now support Python 3.11 and documentation in our latest major releases of DelphiFMX and DelphiVCL Python GUI packages.
Table of Contents
Are DelphiFMX and DelphiVCL compatible with Python 3.11?
Python 3.11 has been the most awaited release for the Python community, majorly because of its claims of Faster Python. The latest releases of our DelphiFMX and DelphiVCL Python GUI packages are fully compatible with Python 3.11. You can install them the same way you installed them earlier using PIP, as mentioned here.
Our GUI packages work under any of the following:
- System-wide Python installation from python.org
- CPython environment created using conda environment manager – miniconda or anaconda
- CPython environment created using venv virtual environment manager for managing multiple Python installations
Check out the images below to showcase that DelphiFMX and DelphiVCL are working on Python 3.11 environment created using the conda environment manager.
Bringing documentation support to DelphiFMX and DelphiVCL packages
Python provides a feature called “Docstrings“, which can be used to explain to any package/library/module users what a type/class and any method/attribute does. So the docstrings can be embedded into any symbol of any given package. Even though we have great Python packages (DelphiFMX and DelphiVCL) to develop GUI applications, we didn’t have docs available until the previous version. In the latest releases of the packages, we’re providing all the docs embedded into any symbol available as part of the importing process. Let’s look at the available docstrings and docs for a Form
type using various ways to access them.
Accessing the Docs through help(object)
Default Python installation provides a Python REPL to run short scripts and check your logic before implementing it in the Production level code. Let’s use the REPL to get the help of Form
type:
Accessing DocString using __doc__
attribute
Python internally implements a double underscore (dunder) method for each top-level core functionality. So, the Docstrings of any object are embedded into the __doc__
attribute, and we can access it using object.__doc__
:
Accessing Docs using ?
feature of IPython
IPython project takes the REPL capabilities of Python to the next level. Out of all the amazing things that you can do with IPython, we can display the docs of any object in an elegant way using the ?
symbol say, object?
:
Future updates – what’s next?
- Utilizing the Docstrings to generate a Static site for Docs using the Sphinx Documentation generator.
- Deploying the Static Docs site to any favorable and automated open-source hosting.
Are you ready to build GUI applications using the DelphiFMX or DelphiVCL Python packages?
With the updates mentioned in this article, you can now build your favorite GUI applications on Python 3.11 version. We have an eBook to get you started with the GUI development journey using either the DelphiFMX or DelphiVCL. The eBook bundle contains the Getting Started with Python GUI development eBook, 15 DelphiFMX for Python Styles, and 13 DelphiVCL for Python styles. All styles support High DPI to help your applications look fantastic, and the DelphiFMX styles work seamlessly on all Windows, macOS, Linux, and Android platforms. The eBook covers the basics of programming Python with these libraries. So unlock your potential for excellent Python GUI development by downloading the eBook bundle at: embt.co/PythonGUIBundle
NOTE: The Python 3.11 graphic can be found at https://www.python.org/downloads/release/python-3110/ and is used for illustrative purposes only. No endorsement by Python Software Foundation is implied. The cover graphic of this article is a composite image created by the PythonGUI.org editorial team.