Wondering where to start learning Python or practice exercises? Here is a lesson which includes a great set of resources including Books, MOOCs, Video Tutorials, Interactive tutorials, exercises which can get you started with Python. I have included my review along with some resources, which I have used while teaching Python myself.
Python is a general-purpose programming language whose design philosophy emphasizes code readability and which provides language constructs intended to enable clear and logical programs on both a small and large scale. There are a lot of good resources available online. Here is a list of online resources which you can use.
Some of Python's notable features:
- Uses an elegant syntax, making the programs you write easier to read.
- Is an easy-to-use language that makes it simple to get your program working. This makes Python ideal for prototype development and other ad-hoc programming tasks, without compromising maintainability.
- Comes with a large standard library that supports many common programming tasks such as connecting to web servers, searching text with regular expressions, reading and modifying files.
- Python's interactive mode makes it easy to test short snippets of code. There's also a bundled development environment called IDLE.
- Is easily extended by adding new modules implemented in a compiled language such as C or C++.
- Can also be embedded into an application to provide a programmable interface.
- Runs on many different computers and operating systems: Windows, MacOS, many brands of Unix, OS/2, ...
- Is free software in two senses. It doesn't cost anything to download or use Python, or to include it in your application. Python can also be freely modified and re-distributed, because while the language is copyrighted it's available under an open source license.
1. Learn Python The Hard Way
This simple book is meant to get you started in programming. The title says it's the hard way to learn to write code; but it's actually not. It's only the "hard" way because it's the way people used to teach things using instruction. This book instructs you in Python by slowly building and establishing skills through techniques like practice and memorization, then applying them to increasingly difficult problems.
This book's job is to teach you the three most essential skills that a beginning programmer needs to know: Reading and Writing, Attention to Detail, Spotting Differences.
The HTML version is free and easy to get you started with Python. Even if you are new to programming, this is a very good starting point to learn the basics. There are around 52 exercises. As mentioned in the book, it is very essential to type the code and see if it executes. Going through the code wouldn't make a better programmer. After completing this you will get a good understanding of what Python can do and get used to the basic syntax. If you are not a beginner, I would recommend reading Dive into Python.
2. Dive into Python
Dive Into Python is a Python book for experienced programmers. This book gets into the details of Python programming language and gives a deep knowledge of the language.
6.00x is an introduction to using computation to solve real problems. The course is aimed at students with little or no prior programming experience who have a desire to understand computational approaches to problem solving.
This is an amazing course! This will give you a better overview and depth than any other resource available. I would totally recommend signing up for this course. The examples and exercises give are really good and you will certainly get a good grip over Python after completing this. Course content is also available at MIT Open Courseware
This course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. This course is designed to be a fun introduction to the basics of programming in Python. Main focus will be on building simple interactive games such as Pong, Blackjack and Asteroids.
This course introduces the fundamental building blocks of programming and teaches you how to write fun and useful programs using the Python language. This course assumes no particular background. By the end of this course, you will be able to write your own programs to process data from the web and create interactive text-based games.
This is a free class for people with a little bit of programming experience who want to learn Python. The class includes written materials, lecture videos, and lots of code exercises to practice Python coding. These materials are used within Google to introduce Python to people who have just a little programming experience. The first exercises work on basic Python concepts like strings and lists, building up to the later exercises which are full programs dealing with text files, processes, and http connections. The class is geared for people who have a little bit of programming experience in some language, enough to know what a "variable" or "if statement" is. Beyond that, you do not need to be an expert programmer to use this material.
This is an ongoing track on Codecademy, in which you can read instructions and code in your browser itself. The complete module is not available yet. I wouldn't recommend it, but do give it a try. Gamification might interest some users.
2. Learn Python
Whether you are an experienced programmer or not, this website is intended for everyone who wishes to learn the Python programming language.
3. Try Python
Interactive tutorial created for Silverlight and Moonlight.