If you want to strengthen your fundamentals (by building projects, of course), before diving into the "real-world" projects, the following two courses are highly recommended; an excerpt picked from one of the answers to How do I start learning Python?:
In Interactive Programming with Python, right after you're given an intro on the basic things like variables, and conditionals; you're off to building a number guessing game.
Another course which I greatly enjoyed, and which follows the above approach, is Udacity's Intro to Computer Science, which not only introduces you to the fundamentals of computer science, in an "Oh, so awesome!" way; but ensures you are building little parts of a basic search engine, after every lesson.
I have also heard very good things about realpython.com which teaches you pragmatic Python programming (and web development) with hands on examples.
Hope this helps! :)