Difference between revisions of "Python"
Line 40: | Line 40: | ||
You can request installation of additional modules by {{Fileabug}}. | You can request installation of additional modules by {{Fileabug}}. | ||
− | See also: [ | + | See also: [[Installing Personal Python Modules]] and [[Managing Python environments and Jupyter kernels]] |
===Matplotlib backend=== | ===Matplotlib backend=== |
Revision as of 13:34, 4 October 2022
Description
Python is a programming language that lets you work more quickly and integrate your systems more effectively. You can learn to use Python and see almost immediate gains in productivity and lower maintenance costs. Python version 3 is the current implementation of Python while python2 is a legacy version no longer supported after 2020-01-01.
Python vs Python-Core
The python
environment module provides a full-featured python installation with around 300 installed python modules for development and use of python applications for research. If you only need the core python build to provide a scripting interface for the application you are building see the python-core
environment module.
Environment Modules
Run module spider python
to find out what environment modules are available for this application.
System Variables
- HPC_PYTHON_DIR - installation directory
- HPC_PYTHON_BIN - executable directory
- HPC_PYTHON_LIB - library directory
and modifies PYTHONPATH and PYTHONHOME, so you could use them in your scripts.
Additional Information
- After the appropriate environment module is loaded - type "python" at the command line to open an interactive session.
- To run a python script type
python scriptname.py
. If the correct "shebang" line is used at the top of the script E.g.
#!/usr/bin/env python
then the script can be run directly as scriptname.py
if it's in the executable path or as ./scriptname.py
if it's in the current directory. The same rules apply to using a python script in a batch job script.
You can request installation of additional modules by submitting a request ticket in the Support System. The support request tickets can be used for requesting software installation, finding a solution to a particular problem, or just asking a question.
See also: Installing Personal Python Modules and Managing Python environments and Jupyter kernels
Matplotlib backend
If you are trying to use matplotlib and get an error similar to
import _tkinter # If this fails your Python may not be configured for Tk ImportError: No module named _tkinter
or
This application failed to start because no Qt platform plugin could be initialized.
then you should try the following:
import matplotlib matplotlib.use('Agg')
before importing pyplot from matplotlib.
Output Buffering
If your job starts, but doesn't appear to produce output from 'print' statements in the job log for a long time, but you want to see that output immediately then turn off output buffering. You can either add a flush=True
argument to the print calls you are interested in or run the script with
srun --unbuffered python SCRIPT.py
Available modules
To see all installed modules names load the environment module and run pip3 list
or python -c "help('modules')"
command before submitting a request for a new module installation. Below is a list of modules and versions installed in the default python version.
Automatically generated list of python modules installed with the Python Package Manager (pip) under the default python version.
File PYTHON_MODULES is missing.
Name | Version |
---|