New to Python, Yay!
So you have probably heard many people wax lyrical about how Python is an easy language to learn and that it tends to be the language of choice for self taught beginners. This is technically true. It's very readable and the syntax can be picked up pretty quickly. The main stumbling block for people is learning how to program. This is a skill that takes time and practices to develop. So on this page you will find tools and websites that can help you learn the syntax and also a number of sites to learn programing and problem solving skills using Python.
Python Ireland primarily serves as a way for Pythonistas across Ireland to meet and connect, however we also will try to help you when you just beginning your journey into the Python world. Please remember though that our focus on this page is to curate existing online resources to save you time trawling through the net, rather than create our own.
Below you can find a list of free resources for learning Python. There are also events organised by Python Ireland and other affiliates that can provide a face to face introduction. Check out our meetup page for details on how to sign up for various Dublin based events.
Note: Python 2 is no longer supported, so (unless you're working on old devices) feel free to ignore any resources still teaching it, in favour of Python 3 resources.
Python Setup
There are many ways to use Python and it can seem a bit overwhelming at the beginning. Here are a few options you can use when you are starting out. As you gain more experience you will figure out how you like to work.
The official Python Wiki offers a useful tutorial for Installing Python
Install an IDE
The most popular editors for Python include:
You should get one of those (or another that you're already comfortable with). They each have a free version, and you might upgrade to paid features later on, if you find them beneficial.
Free Online Tutorials and Books
Think Python: How to Think Like a Computer Scientist
This is a free online tutorial, which also comes in a book format. The benefit of this tutorial is it teaches you programming and Computer Science concepts through Python. In this way you don't only learn Python but also some of the theory and methodology that will help you advance in the field.
This tutorial is similar to the tutorial available on the PSF website. It talks through various features of Python 3 with examples. It also features an extensive collection of videos.
Related Online Courses
An Introduction to Interactive Programming in Python
This course is offered by Rice University in Canada and available on Coursera. If you complete it you get a certificate of accomplishment.
Programming for Everybody (Python)
This course is offered by University of Michigan through Coursera and also offers a certificate of completion. This course consists of weekly lectures in conjunction with a free online book, mentioned above, Python for Everybody.
This is more of an interactive tutorial. Concepts are taught in a smooth manner of definitions and application of code through their web based interface. Good for people who don't want to spend hours watching videos or reading through dense material. There is no particular start or end date so you can learn at you own speed.
Introduction to Computer Science and Programming in Python
This course offered MIT is intended for students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems and to help students, regardless of their major, feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class uses the Python 3.5 programming language.
JobTensor: Python introduction
Another free beginner-friendly resource, with runnable and editable examples.
Get help from fellow pythonistas on Python forum or Reddit
Next Level
Ok, now you understand the syntax, are familiar with common data structures and algorithms. It's time to leverage.
This site is a mine of information of things you should know as a professional developper. Web frameworks, related technologies, cloud deployment, ...
An interesting collection of design patterns implemented in python
Cheat sheets
Network programming cheat sheet
nice set of cheat sheets for data analysis
Problem Solving Sites
So you have done the tutorials and you looking for something a bit more challenging. Here are a few sites that offer problems to be solved through Python.
This site offers loads of problems to work through starting from elementary to hard as nails.
The infamous programming challenge platform, particularly recommended as a way to learn Data Structures and Algorithms to prepare for job interviews. Not Python specific, but Python is a great language to solve all of them.
This site present mathematical problems and challenges you to solve them through code. You can solve them using pretty much any language but obviously you're going to use Python ;-)
A Christmas-themed coding challenge platform, with new challenges added daily each year on 1-25 December. Not Python specific either, but here too, Python really shines as an excellent way to approach such problems.
If you have any questions or comments please post below or send us an email. Happy Learning!