[Newbie] How do I get better at Python programming?

A

Anon

I've gotten off to a good start for programming using Python (my first
programming language). I can do the basics (different kinds of loops,
variables, functions), but I'm not too good with classes yet. I've
written some really small programs just for kicks (most involve
statistics of different situations using random numbers).

I'd like to get to the next level, but I'm not sure how. Are there any
suggestions for continuing to learn? How did you guys learn?
 
B

Brian van den Broek

Anon said unto the world upon 2005-03-29 00:07:
I've gotten off to a good start for programming using Python (my first
programming language). I can do the basics (different kinds of loops,
variables, functions), but I'm not too good with classes yet. I've
written some really small programs just for kicks (most involve
statistics of different situations using random numbers).

I'd like to get to the next level, but I'm not sure how. Are there any
suggestions for continuing to learn? How did you guys learn?


Learning is a process and I'm far from done :)

Python was also my first language (save for some BASIC long ago). The
the single most useful thing for me was the Python tutor list
<http://mail.python.org/mailman/listinfo/tutor>.

Aside from getting helpful answers to your own questions, you can
learn a lot just by watching. Early on, I didn't get much out of
reading c.l.p, but the tutor list was pitched at a level much more
appropriate to the understanding I had.

Other than that:

Write code. Read code. Repeat. :)

Best,

Brian vdB
 
J

James Stroud

You've come to the right place.

Lurk on this list for a while and read interesting threads. These guys here
will teach you something. I personally learn about 2 new python concepts a
day here.

That being said, go back and read the "Python Cookbook, 2'nd. Edition is
published" thread that started yesterday, some good books are mentioned.

James

I've gotten off to a good start for programming using Python (my first
programming language). I can do the basics (different kinds of loops,
variables, functions), but I'm not too good with classes yet. I've
written some really small programs just for kicks (most involve
statistics of different situations using random numbers).

I'd like to get to the next level, but I'm not sure how. Are there any
suggestions for continuing to learn? How did you guys learn?

--
James Stroud, Ph.D.
UCLA-DOE Institute for Genomics and Proteomics
Box 951570
Los Angeles, CA 90095

http://www.jamesstroud.com/
 
S

Steve Holden

Anon said:
I've gotten off to a good start for programming using Python (my first
programming language). I can do the basics (different kinds of loops,
variables, functions), but I'm not too good with classes yet. I've
written some really small programs just for kicks (most involve
statistics of different situations using random numbers).

I'd like to get to the next level, but I'm not sure how. Are there any
suggestions for continuing to learn? How did you guys learn?

Where programming's concerned it's never too soon to start reading other
people's code, and fortunately there's a huge amount of Python about and
available as open source.

I personally learned a lot by reading the Python library sources that
come with most present-day releases, and by lurking on comp.lang.python
and seeing what was discussed. Now I have less time I still lurk, but
there's always something going on.

Finally, don't be afraid to think about problems you don't yet know how
to solve. Stretch to grow.

regards
Steve
 
P

Paul Rubin

Anon said:
I'd like to get to the next level, but I'm not sure how. Are there
any suggestions for continuing to learn? How did you guys learn?

I'd say look at some more general computer science books, maybe not
Python based.
 
R

Roy Smith

Paul Rubin said:
I'd say look at some more general computer science books, maybe not
Python based.

This is excellent advice. Software is really about algorithms.
Programming languages are just a way to implement those algorithms. But,
baby steps first. My suggestion would be:

1) Find some problems in your daily life that you want to solve, and start
writing Python programs to solve them (keep in mind, however, that not all
problems in life can be solved with software).

2) Hang out on this group and ask good questions (see
http://www.catb.org/~esr/faqs/smart-questions.html for some hints on how to
do that).

3) After you've spent 6 months or so mastering Python, go learn another
language. Which one? I don't know, there are so many good (and bad)
choices. Java, I guess. Maybe C# or Visual Basic, or even C++. The
particular choice of which is not so important as the decision to learn
another one. It's not so much that it's better or worse than Python, but
that it's different, and in experiencing the differences you will gain
insight into what both of them have in common.

4) Here's the hard part. Every year, for the rest of your programming
career, learn another language. Some languages you will learn because they
lead to paychecks. Some you will learn because they're cool and different
and it's worth exploring the corners of the envelope. Each one will teach
you something new about programming.
 
L

Larry Bates

1) If you write for MS Windows Get a copy of Python Programming on
Win32.

2) Get a copy of Python Cookbook (2nd Edition just shipped). It
has 100's of examples with detailed explanations of what the
code does. It starts out with very simple recipes but by the
end of the book you are covering very advanced techniques.

3) Read the standard library documentation and source code. You
can learn a lot.

4) Read this list every day. I learn something daily.

Larry Bates
 
A

alex23

Steve said:
Where programming's concerned it's never too soon to start reading other
people's code, and fortunately there's a huge amount of Python about and
available as open source.

I found the Cookbook to be especially helpful for this initially:
digestable code chunks with plenty of explanatory text to provide
context.

_Dive Into Python_ is also great and should help the OP with
understanding classes at least.

-alex23
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,484
Members
44,903
Latest member
orderPeak8CBDGummies

Latest Threads

Top