What must one do to increase the speed and efficiency at which one learns and develops prorams in python(or in any other language)?

Personally I think it's important to start using libraries that are the most suited to your goals. Are you a web developer? Then you should start learning web development frameworks in python (flask, django etc..). Are you a scientist? Then let me save the pain of learning that doing math on python lists is not a good idea and direct you to the "python ecosystem" for science. This work is worth its weight in gold towards that end:

http://shop.oreilly.com/product/0636920023784.do

I think this is the wrong question.
Allow me to be philosofical.

I advise you to consider the following wisdom:
A good programmer is smart and gets things done.

Consider this as a buddhist quote.

Smart means to be brutally honest to yourself about whether you understand something or not. Many cultures promote self esteem, grades, social status or wealth about real knowledge. Don't fool yourself.
Smart means, you always keep yourself busy with something you don't know. So, to be smart means to be stupid.
If you repeat yourself, if you make the same thing again and again without improvement, you are a code monkey.
Smart means creativity. You have to have idees to improve, new aspects.

Getting things done is the reality check. If you do not accomplish something with your knowledge, then you are similar to a body builder who trains by imagining doing exercises and reading books.
Whatever you do, finish it. Make little goals that lead to bigger ones.
Do not try to be perfect. Nothing is perfect, what man does. Be clear what the goal is and achieve it. Good enough is good enough.
If you build something that keeps working for years, then good enough can become deficient. Next time you will will be smarter and change what good enough is.

commented: excellent +14

From my point of veiw i think you should go out there take any intresting open source project read the codes try to add your features to them.

Again find out what you can do to help you computer, like programe small stuff to automate thins u do over and over again.

Get some interesting lib and start getting your hands dirty. The more you do so the more you become confident in your self

Very helpful suggestions. I realize that I cannot just read the books alone. Thanks.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.