Development/Python

From bwHPC Wiki
< Development
Revision as of 10:43, 5 November 2024 by S Braun (talk | contribs)
Jump to navigation Jump to search

Introduction

Python is a versatile, easy-to-learn, usually interpreted programming language. It offers a wide range of libraries for scientific tasks and visualization. Python is the de facto standard interface for applications of machine learning. Python can be used in particular as an open source alternative for tasks that have usually been used for Matlab.

Installation and Usage

Available versions

Python is available on all systems. Python is available on all systems. Either as system Python, which comes bundled with the operating system, or via Lmod software modules.

System Python is available in different versions, typically the default system Python is too old for most users and applications. Newer versions are therefore installed alongside the standard version. You can access a specific Python version by specifying the version in the Python command. E.g. on bwUniCluster, the following versions are currently available. Please note, that these exact versions will change over time and differ from site to site!

$ python --version
Python 3.6.8
$ python3.8 --version
Python 3.8.16
$ python3.9 --version
Python 3.9.16
$ python3.11 --version
Python 3.11.2
$ python2 --version
Python 2.7.18

Python versions which are offered via software modules can be identified via:

$ module avail devel/python

A specific version of Python can then be chosen e.g. as follows:

$ module load devel/python/3.12.3_gnu_13.3
$ python --version
Python 3.12.3


Installation

Not required.

Usage

Interactively, prompt

Scripting

Via Jupyter

Package Manager

pip

Virtual Environments

Short description

Benefit

Creation

Usage

Best Practice

Always use virtual environments

Do's and don'ts


Example