Skip to content
Python

Python

Python IDEs

Run Python Notebooks online

  • Google Colab: an online jupyter notebook platform for machine learning.
  • Binder: make online (e.g., GitHub repo) notebooks executable.

Package Manager for Python

  • uv: uv is a drop-in replacement for pip, an extremely fast Python package and project manager written in Rust.
  • pixi: pixi supports both conda environment.yml and pip requirements.txt files.
  • Anaconda Python: a full set of scientific Python packages with the conda package manager.   - miniforge : minimal installation with conda and mamba package managers and the conda-forge community packages.
    • micromamba: micromamba is a standalone version of the mamba package manager.
  • pipenv: the official dependency management tool for Python packages.
  • Poetry: Python packaging and dependency management.
  • pdm: A modern Python package manager with PEP 582 support.

Python tutorials

General

Visualizations

Scientific

Data Processing and Machine learning

Scientific machine learning

  • deepxde : deep learning and differential equations.
  • jax : Composable transformations of Python+NumPy programs: differentiate, vectorize, JIT to GPU/TPU, and more.
  • diffrax : Numerical differential equation solvers in JAX.

Python in GitHub actions

Pip packages

The https://github.com/actions/setup-python actions installs python with a specific version and could cache downloaded Python packages. (But not the installed environment).

uv is a drop-in replacement for pip, an extremely fast Python package and project manager written in Rust. uv caches the environment by default.

name: UV example

env:
  UV_SYSTEM_PYTHON: 1

jobs:
  python:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Set up Python
        uses: actions/setup-python@v5
        with:
          python-version: '3.x'
          check-latest: true
      - name: Install the latest version of uv
        uses: astral-sh/setup-uv@v5
        with:
          version: "latest"
      - name: Install requirements
        run: uv pip install -r requirements.txt

Conda packages

The https://github.com/mamba-org/setup-micromamba action installs the micromamba package manager and conda package dependencies. It also caches the Python runtime environment.

- uses: mamba-org/setup-micromamba@v1
  with:
    environment-file: environment.yml
    init-shell: bash
    cache-environment: true
    post-cleanup: 'all'

- name: Run custom command in micromamba environment
  shell: micromamba-shell {0}
  run: python --version
Last updated on