With support from the National Science Foundation, Unidata is working to create a collection of online training materials focused on the use of Python in the atmospheric sciences. While our examples and scenarios may feature Unidata tools and data technologies, our aim is to present a generic set of freely available tools that are generally useful to scientists, educators, and students in the geosciences, broadly defined.
This page is intended for new Python users looking to gain an understanding of the scientific Python ecosystem. All things related to getting started with Python are hosted here, including download instructions, basic syntax, and general usage examples. For more detailed examples of how to analyze data and produce publication-quality figures specifically for atmospheric science and meteorology, please see our Example Gallery or Python Workshop materials.
Unidata staff are actively developing and curating the material here, but what you see today is an early version of what we envision for this resource. Please forgive the unfinished nature of the materials here, and feel free to give us your suggestions for additions or improvements by contacting Unidata Python Support.
Git and Github
GitHub is a online platform for hosting code that promotes collaboration.
- What Is Git, Github and Why Do You Care?
- Introduction to GitHub
- Creating a GitHub Account (Free video from egghead.io)
- GitHub's Guides
- How to Contribute on Github (Free video series from egghead.io)
- Online Interactive Git Tutorial (from GitHub)
- Mac OS X and Windows Desktop Applications for Using Git and Github
- How to Start and Run a Jupyter Notebook
- Unidata's Jupyter Notebook Gallery
- Whetting Your Appetite for Python
Basic Python Syntax
Here are some good sources for learning the basics of Python's Syntax:
- Codecademy has some free lessons on learning Python
- learnpython.org also has some free, interactive materials
- The official Python tutorial is pretty good as well
Beginning Python Concepts
What follows is a series of Jupyter notebooks on learning Python with geoscience objectives. You can either peruse this material with the nbviewer links below or run the Jupyter notebooks interactively.
- Control Flow
- Basic Data Structures
- Basic Input and Output
- Times and Dates