Richard Gnall

Python

User Groups
Greater Hartford Python Group
Welcome to the Greater Hartford Python Group--where you will meet fellow software and Python enthusiasts and professionals--as we work to build and strengthen the community of software architects and developers; Python and Python-based application developers, architects and designers; and other computing technologists in Connecticut.

Join our group as a newcomer to Python or as an accomplished Pythonista. We hope that your participation in our group will help you and others to increase their understanding of what Python can do, the best practices to apply when using Python and Python-based tools, and generally, how to be a more productive, more effective and more knowledgeable software architect and developer.
Software
Python.org - Official Python Website
Download the Python programming language here (current and previous versions).
Tkinter
Python's de-facto standard GUI (Graphical User Interface) package.
VPython
VPython makes it easy to create navigable 3D displays and animations, even for those with limited programming experience.
Pygame
Modules for creating fully featured games and multimedia programs in the python language.
django
High-level Python Web framework that encourages rapid development and clean, pragmatic design. Built by experienced developers, it takes care of much of the hassle of Web development, so you can focus on writing your app without needing to reinvent the wheel.

... works with any Python version from 2.6.5 to 2.7. It also features experimental support for versions 3.2 and 3.3.
Visual Studio - PTVS
I have not been able to find instructions for installing PTVS in Express versions of Visual Studio, only for Community or higher versions of Visual Studio.
Python Tools for Visual Studio - Overview
Editing, Libraries, Debugging, Interactive, Source Control, Unit Tests, Open Source.
Python Tools for Visual Studio - Video
Python Tools for Visual Studio (PTVS) is a free, open source plugin that turns Visual Studio (including Express!) into a Python IDE. In this episode, Robert is joined by Steve Dower, who shows how PTVS provides Python developers all of the goodness of Visual Studio, including IntelliSense, local and remote debugging and more. He also discusses why developers who have not used Python before might want to give it a try.
Python Tools for Visual Studio - Getting Started 2015
PTVS can be used in Visual Studio Professional, Community, Express Desktop and Express Web.
Python Tools for Visual Studio - Getting Started 2013
PTVS can be used in Visual Studio Professional, Community, Express Desktop and Express Web.
Python Tools for Visual Studio - GitHub
Hi. Welcome to our new home at github. Downloads can be found at the links above, and our documentation and issue tracker are now on github.
Python Tools for Visual Studio - Installation (Community or higher)
PTVS can be used in Visual Studio Professional, Community, Express Desktop and Express Web. This website contains instructions for installing in Community or higher.
Python Tools for Visual Studio - PlugIn
PTVS is a free/OSS plugin from Microsoft that turns VS into a Python IDE (Express/Pro). Supports CPython, IronPython, Intellisense, mixed Python/C++ debug, remote linux/MacOS debugging, profiling, HPC clusters, multiple REPLís, IPython, Django, flask, cloud computing, ...
Online Courses
Codecademy - Python
Currently the most popular way to learn Python online.
Microsoft - Introduction to Programming with Python
A very verbose beginning. Slow paced with lots of irrelevant chatter.
Coursera - Rice University - An Introduction to Interactive Programming in Python (Part 1)
This two-part course is designed to be a fun introduction to the basics of programming in Python. Our main focus will be on building simple interactive games such as Pong, Blackjack and Asteroids.

While the class is designed for students with no prior programming experience, some beginning programmers have viewed the class as being fast-paced. For students interested in some light preparation prior to the start of class, we recommend a self-paced Python learning site such as codecademy.com
Coursera - Rice University - An Introduction to Interactive Programming in Python (Part 2)
This two-part course is designed to be a fun introduction to the basics of programming in Python. Our main focus will be on building simple interactive games such as Pong, Blackjack and Asteroids."

We strongly recommend that you have completed the first part of this course prior to attempting the second part of the course since we assume a basic working knowledge of the GUI system used in the class.
Coursera - University of Michigan - Programming for Everybody (Getting Started with Python)
This course aims to teach everyone the basics of programming computers using Python. We cover the basics of how one constructs a program from a series of simple instructions in Python. This course will cover Chapters 1-5 of the textbook "Python for Informatics". This course is equivalent to the first half of the 11-week "Programming for Everybody (Python)" course.
Coursera - University of Toronto - Learn to Program: The Fundamentals
This course is intended for people who have never programmed before. This course introduces the fundamental building blocks of programming and teaches you how to write fun and useful programs using the Python language.
Coursera - University of Toronto - Learn to Program: Crafting Quality Code
Not all programs are created equal. In this course, we'll focus on writing quality code that runs correctly and efficiently. We'll design, code and validate our programs and learn how to compare programs that are addressing the same task."

"This course assumes "Learn To Program: The Fundamentals", or similar background.
Google's Python Class
...for people with a little bit of programming experience who want to learn Python. Written for Python 2.4 or a higher version of 2.x, but not 3.x.
Open Courseware - MIT - Introduction to Computer Science and Programming
This fast paced course uses Python 2.5.4 .
Tutorials
How to Think Like a Computer Scientist - Learning with Python 3 (RLE)
By Peter Wentworth, Jeffrey Elkner, Allen B. Downey, and Chris Meyers.
Online and downloadable HTML, downloadable pdf.
October, 2012. Python 3.

Allen Downey provides an alternate version of this book under the name Think Python - How to Think Like a Computer Scientist. There are two versions with this name, one written in Python 2 with footnote references to Python 3, and a version updated by Michael Kart for Python 3.2.
Python Tutorial Release 3.2.3
By Guido van Rossum and Fred L. Drake.
Downloadable pdf.
June 18, 2012. Python 3.2
Books
Amazon tech.book(store)
All of Amazon's textbooks on computer technology topics collected together in one location. Sorted by programming language, operating system, networking, robotics, etc.
Python.org Book List
A list of Python books divided into four categories: Introductory, Advanced, Reference and Specific Applications.
Programming in Python 3: A Complete Introduction to the Python Language, 2nd edition
By Mark Summerfield.
Python Essential Reference, 4th Edition
By David M. Beazley.
Starting Out with Python, 3rd edition
By Tony Gaddis.
Written for the absolute beginner programmer - someone who has never before seen a line of code.
Resources
Guido van Rossum
Personal home page for the inventor of Python.
Python Documentation
Current and past versions of Python.
Tutorials, library and language references, book lists, etc.
Moving from Python 2 to Python 3 (.pdf 669KB)
By Mark Summerfield, author of "Programming in Python 3: A Complete Introduction to the Python Language".
Downloadable pdf.
... a 4 page document that provides a very concise summary of Python 2<->3 differences plus the most commonly used new Python 3 features. It is aimed at existing Python 2 programmers who want to start writing Python 3 programs and want to use Python 3 idioms rather than those from Python 2 where the idioms differ.
Google Developers Academy
Python App Engine and Python Search API, ...
ipaddress module
An introduction to the ipaddress module. This document aims to provide a gentle introduction to the ipaddress module. It is aimed primarily at users that aren't already familiar with IP networking terminology, but may also be useful to network engineers wanting an overview of how ipaddress represents IP network addressing concepts. ... ipaddress is a module for inspecting and manipulating IP addresses...