tags:

views:

195

answers:

9

I'm a complete newbie to Python. I've worked on PHP/JavaScript earlier but starting today I'm moving onto Python. I have no idea about the environment needed for it. I could use some suggestions on it for me to get started.

A: 

The Python Beginner's Guide and the official Python Tutorial both seem like good places to start.

Daniel Pryden
Why the downvote?
Daniel Pryden
+1  A: 

On my mac/Linux machines, python came pre-installed. On windows I use both jython under the eclipse IDE and ActivePython with their IDE/eclipse.   With eclipse you'll want PyDev.

Michael Deardeuff
+2  A: 

Under Unix, Emacs is a good choice, to which I always come back, because it is convenient to have a single editor for everything, and because it's open source.

What is best for you depends on your past experience with IDEs. I'd say: stick with what you've been using, or take this opportunity to try an even better IDE.

Note: Python comes with Idle, which is a very simple (if limited) IDE.

EOL
Why limit it to "Under Unix"?
kjfletch
You're right, kjfletch!
EOL
A: 

Geany is a good option for a Linux setup, it's intellisense isn't that great but syntax highlighting is good and it can compile your code directly from inside the editor, plus it handles other languages such as C/C++, PHP, Java etc... Eric is another popular choice as it's a full IDE and I know some people use Eclipse.

On windows I use Notepad++, but it's mostly because I like text editors instead of fully blown IDE's.

Reference wise Daniel's choices are very good places to start, also check out Green Tea Press who do free computer books, there are two Python choices on there but the "Python for Software Design" book hasn't yet been published properly although you can download the manuscript. The "How to Think Like a Computer Scientist" book is a good one and not as scary as it sounds.

daz-fuller
A: 

IDLE is nice to try out things. Other tools that people like are Eclipse with the Pydev plugin which seems to work ok, although it has crashed a few times (Eclipse, that is) and NetBeans (which I haven't tried) but some people seem to like.

Makis
+1  A: 

It all depends on what you are looking for and what you are already using.

For instance, if you are using a more 'simple' editor at the moment: as long as it's got Python syntax you've got the basics.

If you are used to e.g. Eclipse you can just continue to use that, combined with Pydev. Besides syntax highlighting you'll also get more fancy features to help you debug and refactor your code.

Personally I use Emacs with python-mode (and a few other modes to interface with Subversion and Git). In the past I used Vim which also worked quite well.

My advice would be to start out with your current environment as long as it has some rudimentary support for Python. Once you are familiar with the language, start exploring what your environment is missing and either add it or if you cannot, switch to an enviroment which does support the feature.

Mark van Lent
A: 

I can only help you if you're running a Mac. Download Xcode. I believe that Python 2.3 comes bundled with these development tools. Luckily enough, this is all you really need to get started, unless you want a newer version of Python.

All you need to do is open up Terminal and type python. You're done!

Dan Loewenherz
+2  A: 

Be sure to check out IPython. It's an enhanced interactive python shell with a bunch of useful features such as Tab-Completion using introspection (eg, type "my_object." to see a list of its attributes and methods), logging your interactive session to an executable python-file, defining macros, etc. The documentation page has a link to the tutorial as well as screencasts showing it in action.

Chris089
+1  A: 

I use gvim with some plugin in order to have better support for python.

If you like IDE, look at wing IDE wich is the best I have tested so far. Especially the debuger included is really helpful.

darkpotpot
Would be nice to know which plugin for gvim.
jamesh
sorry for the late response. In case you're still interested, I would say taglist, python.vim, Align, pyflake.If you want, I can send you my vimfiles.
darkpotpot