Get Started with Python Web Development
Python is a general purpose programming language and is quickly becoming a must-have tool in the arsenal of any self-respecting programmer.
There are numerous Web Frameworks in Python starting from micro framework to full stack framework and they have their advantages in their way. so you are ready to do some web development in it, but before going into the further details,lets start from the beginning
Learn Basics of Python
There are two versions of Python currently as of today , 2.7.5 and 3.3 are the current stable versions of Python. Which you choose to learn really doesn’t matter too much, as the differences will be minimal—especially to a beginner. But you should know that, while Python 2 has far, far more 3rd party support, Python 3 is the primary focus of the developers designing the language and many of the 3rd party support is not yet ported into Python 3. The choice is yours to decide. However, learning any new language can be a daunting task, and finding the right places and people to learn from is half the battle. That’s where this guide can help. This is your blueprint for making Python easy, fun and rewarding to learn.
For beginners, the biggest difference between Python 2 and Python 3 will most likely be that Python 2 can use
1. Codecademy python course
Codecademy has done a great job in putting together the course for python and its really useful for the beginner to get started quickly with Python.
There are some awesome screencasts available for the absolute beginner
some of the screencasts i referred while i learnt python are
Both of the tutorial series are outstanding and you can even start scripting after finishing the series. Its highly recommended to watch those tutorials. they are free and great resource for your future references.
3. The Official Python Website
There is no great resource other than the official python.org documentation ofcourse but its not really recommended for the beginner as the concepts are dealt in more depth and advanced still its the best resource.
With this you will have some python knowledge and how stuffs are done in python.
Read some books
There is a plethora of free high quality e-books to choose from. Below is a quick list of some of the best. You can download a free e-book version for each of them, or you can choose to buy the physical book (or donate) if you want to support the author, which I’m sure they would greatly appreciate.
Think Python stays a little more towards the theoretical side of things. This may prove a little frustrating for a total beginner, but the book is well worth the read in regards to algorithm theory and high level concepts.
If ‘learning by doing’ is your thing, then building your own game will prove to be a rewarding experience! In this book, Al Sweigart assumes no prior knowledge of Python and takes you all the way to building your own game.
Get Familiar with StackOverFlow
StackOverflow isn’t just full of ‘newbie’ errors and problems; there are some really clever and helpful people that use the site – learn from them!
Take a look at the Hidden features of Python thread, for example.“
Many of the tips and tricks you see here may not be covered in many formal tutorials, but they will be extremely helpful for intermediate to advanced Python users.
Step into Web Development
Now you are complete Python ninja ready to dive into Python Web Development, but the problem here is there are lot of Frameworks out there and choosing the best one is really difficult but in the beginners point of view Flask Micro Web Framework will be great to get started with Web Development as you only need to know Python to get started and you already have learnt a lot.
After you learn the Flask Framework you will know that its so easy to create static pages and the next question arises , is it fit to create a next web 2.0 big app with it. the answer is Yes, you can create anything you want with Flask but after struggling through many steps you will realize that you have successfully reinvented a wheel which has been already invented but it gives you immense flexibility and power to you which may feel overwhelming at first and thats why many beginners opt for Django and then change it after six months or so.
You can read this thread to know what sites are powered by Flask
Though Django and Pyramid are also good at Web Development but they are intended for an advanced user not for the beginner who has just learnt to code few line of python but learning Flask will be a great place to start if you need to get serious with Web Development as it doesn’t abstract anything and there is no magic at all.
Common Libraries and Tools
If you are doing some CPU intensive work, and you find that Python is proving itself to be a bottleneck, then maybe you need PyPy. PyPy is an alternative compiler for Python that can really speed up your processing.
These two usually go hand in hand (SciPy is dependent NumPy). If you are doing some serious number crunching for mathematical or scientific research, then these two libraries will be your best friends. NumPy and SciPy extend the mathematical functions and capabilities of Python and can greatly speed up some of your tasks.
BeautifulSoup really is beautiful. If you need to scrape a HTML page for some information, you will know all too well the frustration and hair loss that it can bring. BeautifulSoup will do all this for you and add years to your life. Highly recommended and fun to play around with.
The Python Image Library (PIL) is an extensive library that is great for anything to do with images. If you need to manipulate an image, chances are PIL can do it for you.
From here you can go a long way by yourself.
Some Web Development Libraries
SQLAlchemy is the Python SQL toolkit and Object Relational Mapper that gives application developers the full power and flexibility of SQL.
Alembic is a lightweight database migration tool for usage with the SQLAlchemy Database Toolkit for Python.
Thats it for now and feel free to share your ideas.