I want to learn python programming from scratch. What do you advise to me? From which book I should start to learn?
You're asking two things, I don't know how much experience you have so I'll answer both:
- Learning Python: for learning the Python language my personal favorite is 'Core Python Programming (second edition)' by Wesley J. Chun. This book covers a lot of Python in a good, readable way. It made it easy for me to step into Python from a programming background but it's geared to people new to programming; I found plenty of useful tips on programming in general. I still use the book to as a reference, to learn about areas I previously wasn't interested in, and a refresher on syntax or language intricacies. If you're more experienced with Python I can also recommend 'Pyhton in a nutshell' by Alex Martelli as a desktop reference guide, a very compact overview on the language and important libraries.
The previously mentioned docs.python site has everything too but these books make it a little easier to get into, in my personal experience.
- Learning programming: Python is great for experienced programmers and people new to programming. If you're experienced in programming, learning the language is something that can keep you occupied for a long time because Python has a lot of options one can master.
For learning to program there's practice, practice and a lot more practice.
There are books on the subject but a fun way of learning to program is by programming games. Knowing a (little) bit of Python is recommended but then you can perhaps look into 'Game Programming, The express way to learning' by Andy Harris or 'Game development with Python and Pygame' by Will McGugan.
You won't change the world (anymore) by writing your own Pong, Space Invaders, Astroids or Pac-Man but it's fun and educational!
One more question. I also want to know if python can produce web based applications like java applets?
Web based apps: yes, Python modules are often based on C/C++ libraries and there's a wealth of web related functionality available. Python can function similar to PHP (there's a Python module for Apache) and there are frameworks available in Python to help you to easily create your own website, like Django, Turbogears and others.