Python Resources - copl-labomc/wikiOMC GitHub Wiki

  • The Hitchhiker’s Guide to Python : it may have just about everything but a towel, don't panic and start learning here
  • Article on resources specific to scientific research, presented in comparison to Matlab
  • Getting started and basic programming with Python by the Art of Problem Solving (AoPS)
  • Google's Python Class
  • Codecademy offers online training for Python 3 and Python 2, the latter for free
  • The https://www.practicepython.org website offers (relatively) short coding exercises
  • Full Stack Python : Guide for Web application development including information on relational databases and how to build a Slack bot 😺
  • Project Jupyter is developing open-source software and services, documented here, for interactive computing across dozens of programming languages. Well-known for its classic Jupyter Notebooks with interactive widgets, originating from IPython, it now offers even more functionality with JupyterLab. A quick overview is found in these articles on Jupyter Notebooks and JupyterLab. They can be deployed for multiple users via JupyterHub or used directly with cloud computing on Google Colaboratory (free for now).
  • With Jupyter giving access to your operating system shell, learning basic Bash commands might prove useful.

:star: our Favourites

  • Plotly graphing library and its cheatsheet
  • Chart Studio online graphical user interface for Plotly and examples from users, where you can download the Python code for the graph (or JSON, MATLAB, R etc.)!
  • Python wrapper for Airtable and its documentation
  • Lessons to learn programming and plotting in Python by Software Carpentry

for Science & Engineering

  • SciPy ecosystem with several useful resources to explore beyond the core packages, such as the SciPy Cookbook, a repository of notebooks, as well as a large list of software sorted by topic and SciKits add-ons
  • QuTiP - Quantum Toolbox in Python for dynamical simulation & QNET - Computer algebra package for quantum mechanics and photonic quantum networks
  • Image processing lesson by Data Carpentry and display image data with Plotly's Imshow library.

Integrated Development Environments (IDEs)