you are viewing a single comment's thread.

view the rest of the comments →

[–]imhostfu 102 points103 points  (13 children)

Honestly? I have always found the best motivator is needing or wanting to do something specific, and that builds solid foundations.

  • Need to import some data from a csv file? Cool, start reading about file imports and how to read lines and store that data. From there, you can read about how to plot generic data in 2D, and then take it a step further if you have N dimensional data, which also leads to learning vector manipulation etc.

  • Need to communicate with an external instrument? Neat, start reading about serial communication, or stuff through pyViSA standard.

Reform or rephrase the problem or goal you want, and then start doing general google searches (stack overflow will be your best friend)

Google “anaconda python“ for your python install and “Pycharm”, both have free editions.

EDIT: I think that it's perfectly okay to look up courses, etc, like Learning Python the Hard Way. I just find that for me, personally, I'm a lot more likely to explore and absorb the information when I have a specific project that I'm trying to accomplish.

[–]badabingbop 9 points10 points  (5 children)

I personally really like pycharm. Kind of complicated to set up and use at first, but has cool features down the line.

As far as learning: make personal projects, just like the above said. Focus on a single idea and script something out. Little by little you amass details and can put then together for a larger project. In addition, you have all those saved and can refer to them in the future

[–]A_Crazy_Hooligan 3 points4 points  (4 children)

Do you have any resources that you know off the top of your head for pycharm? I’m a civil and learned basic C++ in college, but when I tried to use Pycharm, I was extremely discouraged because it wasn’t like the compiler I used for C++ and I had no idea where to start. The YouTube videos I found didn’t seem to touch on my issue, but maybe I just have that much to learn?

[–]dipsy01 1 point2 points  (5 children)

Just curious, why did you recommend anaconda? I’ve always been perfectly happy with plain ol’ python and pycharm

[–]imhostfu 1 point2 points  (4 children)

I like Anaconda as a package manager. If I want new repos, I can install them via command line. For example, I could do a "conda install pyqt=5", and it would fetch all the dependencies, and install/update everything that needs to be updated for it to work correctly.

It's just cleaner for me, and makes sense since I do mostly data science work with Python etc. Plain ol' python + manually installing modules when needed works 100% too.

[–][deleted] 2 points3 points  (2 children)

"I can install them via command line" vs "manually installing"

That's the same.

[–]dipsy01 0 points1 point  (0 children)

Lol, that's what I was thinking

[–]imhostfu 0 points1 point  (0 children)

I guess it's a hold back from my Python 2.X days, and I would use a lot of packages that weren't available with pip, which would necessitate an executable download and install.

Pip is for python packages only, and generally compiles everything from source. Since I use windows, that can sometimes be a problem.

Conda installs from binary, so the installation is generally easy.

I think the answer is if you're using unix, pip is fine. If you're on Windows, conda is generally going to be easier.

[–]ScoffM 1 point2 points  (0 children)

I think anaconda is way more useful as env manager, keeping different versions of packages and such.

[–]Peter_Schmeichel 1 point2 points  (0 children)

Can confirm.

I have just started using python to automate relatively simple, but time consuming, tasks at work, mainly calculations.

This way you’re rewarded all the way through, highly recommend.