How do I learn Python from zero to web development?
-
I am looking into learning Python for web development. Assuming I already have some basic web development experience with Java (JSP/Servlets), I'm already familiar with web design (HTML, CSS, JS), basic programming concepts and that I am completely new to Python, how do I go about learning Python in a structured manner that will eventually lead me to web development with Python and Django? I'm not in a hurry to make web applications in Python so I really want to learn it thoroughly so as not to leave any gaps in my knowledge of the technologies involving web development in Python. Are there any books, resource or techniques to help me in my endeavor? In what order should I do/read them? UPDATE: When I say learning in a structured manner, I mean starting out from the basics then learning the advanced stuff without leaving some of the important details/features that Python has to offer. I want to know how to apply the things that I already know in programming to Python.
-
Answer:
First learn Python well Here are some online resources for learning Python http://docs.python.org/tutorial/index.html http://en.wikibooks.org/wiki/Python_Programming http://www.swaroopch.com/notes/Python http://homepage.mac.com/s_lott/books/python.html http://linkmingle.com/list/List-of-Free-Online-Python-Books-freebooksandarticles http://openbookproject.net/pybiblio/ http://www.greenteapress.com/thinkpython/thinkpython.pdf http://www.brpreiss.com/books/opus7/html/book.html http://www.greenteapress.com/thinkpython/thinkCSpy/ http://www.openbookproject.net/py4fun/ http://inventwithpython.com/ http://learnpythonthehardway.org/ http://www.mindview.net/Books/TIPython/ http://www.briggs.net.nz/log/writing/snake-wrangling-for-kids/ For Django you can refer http://djangobook.com/ What I suggest is http://docs.python.org/tutorial/index.html http://en.wikibooks.org/wiki/Python_Programming http://djangobook.com/ Also check out this http://www.youtube.com/watch?v=v1gTI4BOPUw
Terence Ponce at Programmers Visit the source
Other answers
If Web development in python is what you are looking for, then after a thorough understanding of python , I suggest that you have a look at Flask. Django and other full stack frameworks would definitely make your life much much easier but overall would leave you with an incomplete feeling as if you have not learnt much. Flask IMHO , is the most awesome framework in python as of now, but yes that is just my opinion.
Rasmus
Don't take this too seriously, but ... create file name app.py with the following content: from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello World!" if __name__ == "__main__": app.run() assuming you have pip (python package installer) http://www.pip-installer.org/en/latest/installing.html#installation-instructions do the following: $ pip install Flask $ python app.py * Running on http://localhost:5000/ Now you can visit your first web app under localhost, port 5000. That would be your first python web application. Everything after that is "refinement" in application structure, functionality and appearance.
miku
I also would like to recommend the Python Koans for learning: http://github.com/gregmalcolm/python_koans They are pretty similar to the Ruby Koans (a lot of it was directly ported) and are pretty cool.
Tyler
In addition to the resources linked by @Chankey, I want to add the http://docs.djangoproject.com/en/1.2/ which I am now using to learn web development myself.
indyK1ng
http://learnpythonthehardway.org Is a free online book that contains a series of 52 lessons in python. By starting on lesson 1 and working through to lesson 52 you should learn enough to consider yourself a competent programmer in the python language. Each lesson has code examples that you should take the time to type in and RUN then ALTER to see how that changes the results. It is that process by which most people that I know generally learn programming.
Alex C
You first learn python programming language. Then when you feel comfortable with it, learn libraries like Django. Setting up an using an application at Google App Engine would further help in development.
kadaj
Web development always comes back to one thing: and that is the browser. Learn HTML, CSS and JavaScript very well, and it will serve you though any language change. Www.w3schools.com is a great place to learn these things, but when it comes to CSS, its often very useful to just sit down and play with it. Find a cool web design and implement it in HTML by hand. This is a very, very neccecary skill if any of your server side code results in HTML. Next, I like your logical approach, but it might not be the best way to go about it. A more rewarding approach may be to establish a goal that you want to accomplish, and learn on the way. Starting with django may not be the best idea, however. Many of the decisions that they made when designing the framework would only make sense if you'd experienced the problems that they solve first hand. My first web language was php, and the most effective way I understood best practices was to write crappy, brittle code, realizing that there was a problem, and resarching solutions. If I was to research a solution before I understood the problem, I wasn't able to apply it effectivly. If you're willing to take your time on this, perhaps starting with a less abstract technology set such as php may be a great learning experience.
nlaq
Related Q & A:
- How Can I Get Started As A Freelance Web Developer?Best solution by code.tutsplus.com
- How can I learn hadoop through projects?Best solution by globalknowledge.com
- How can I learn how to do stick figures or animated stuff online free?Best solution by Yahoo! Answers
- How can I learn how to sing?Best solution by Yahoo! Answers
- How can I learn how to invest?Best solution by Yahoo! Answers
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.