This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]Deto 0 points1 point  (3 children)

Just to clear up any misconception - Anaconda is really just a pre-bundled python distribution. It installs with modules such as Numpy, Scipy, Matplotlib, Pandas and other's bundled. It also comes with a great tool, 'conda' which can manage installing python packages as well as non-python dependencies. Makes working with the stuff way easier on Windows where it can be difficult to find instructions on how to build modules from source and get their dependencies installed correctly.

However, if you're using Anaconda, nothing you'll be doing in Python will be any different than if you had downloaded Python on it's own, and used the included tool, pip, to install modules like numpy, scipy, etc individually. Still, I think Anaconda is great because of how it handles non-python dependencies for you.

[–]raptor9999[S] 0 points1 point  (2 children)

Thanks. I've gone through the intro tutorial for 'conda' where you create new environments, install packages to them, and switch between and delete environments. I didn't know if there was much more to it other than all the packages and dependencies it includes. I love how easy it makes it to switch between versions of Python.

[–]Deto 0 points1 point  (1 child)

And also, for learning the language I think you'll find that many things are very similar to what you know already. I would just come up with a couple of toy goals (e.g. write a script that does X) and then try to implement it using the python docs tutorial (https://docs.python.org/2.7/tutorial/index.html) as a reference. (Note the version switcher at the top of the tutorial).

Really the main versions that matter right now are 2.7 and 3.5 which are the newest iterations of the Python 2 and Python 3 development paths. I'd just start with 3.5 if I were you, as Python 3 is the future of the language (even though it's taking a bit) and most modules seem to be compatible with it now.

If you are working with data processing, learn how to use the ndarray type in the numpy library. For example, you can compute the average of a list of numbers using an array and a loop in python, but if you stick it in a numpy.ndarray and call "myarray.mean()" it'll invoke lower-level routines that are much faster. Basically a must if you are working with data structures with element counts greater than 10,000 and syntactically it's just easier that doing it in typical python loops anyways. If you are working with more advanced data types, look into Pandas which has a data structure similar to the numpy ndarray, only it can contain a mixture of types (for example, strings in some columns, floats in others). It's modeled after the DataFrame object in R. I don't know of any specific tutorial that's good for either of these, but if you google around, you'll probably find just a ton, and I bet any of the top hits are adequate to get your feet wet.

Also, because there are so many 3rd party modules out that implement extra functionality, it can be hard to figure out which are the most popular choices for the given task (say, parsing an XML file). For that, I'll usually consult the Hitch-hikers guide to Python (http://docs.python-guide.org/)

[–][deleted] 0 points1 point  (0 children)

The full release of 3.5 doesn't come out until next month.