Open Water Foundation / Learn Python


This documentation provides an overview of important Python concepts, with best practices and working examples. The documentation has been created by the Open Water Foundation to facilitate our work and is being made available in the hopes that it also helps others.

If you are reading this documentation, you have likely already decided that Python is the language that you want to use for programming. It is assumed that you have a basic understanding of programming and the Python language. There are other sources of information about Python. This documentation focuses on practical issues that, if handled well, will minimize frustration and increase the efficiency of your software development.

This documentation is a work in progress and will contain notes for inserts for awhile until time can be devoted to filling in blanks.

About the Open Water Foundation

The Open Water Foundation is a 501(c)3 nonprofit social enterprise that focuses on developing and supporting open source software for water resources, so that organizations can make better decisions about water. OWF has created this documentation to educate its staff and other developers that are working on Python software.

See also other OWF learning resources.

How to Use This Documentation

This documentation is not intended to be a full reference for the Python language but focuses on important topics that will help a Python programmer understand important technical concepts and be successful with software tools.

The documentation is organized in the order of basic concepts and steps needed to build a Python program. As time allows, additional sections will be added for more advanced topics such as use of useful Python API libraries for water resources. The following main sections are available:


The OWF Learn Python website content and examples are licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Source Repository on GitHub

The source files for this documentation are maintained in a GitHub repository: owf-learn-python.

Release Notes

This documentation was last updated 2017-10-21. See the Release Notes in the GitHub Project.