- Edited
Python is definitely something worth having in your knowledge arsenal. Keep in mind, that once you understand basic programming logic, and have learned 2-3 languages, it's far easier to bounce around.
Why I use Python regularly:
Great duct tape language, you can do almost anything with it. There is massive support and libraries for just about anything you can imagine.
Examples include:
Great database libraries that are well documented. SQLite, Postgres, MySQL, all easily handled.
Math libraries such as Numpy, SciPy, etc.
One of the top languages used for machine learning. Others include Apache Spark and R. Options, imo, decrease significantly outside of these.
People tend to say that R is better suited for statistics, however Python has caught up in my opinion. Arguments can be made that some things are still easier in R. Numpy is awesome.
Great language for use in financial analysis, image analysis, malware analysis etc, systems administration.
Multithreading and multiprocessing support.
Python, is well, pythonic. It strives to be easy to read. I find that things like Ruby (or maybe it's Ruby developers) tend, to strive for cleverness. Cleverness in programming is annoying. Especially when you are learning a project. Readability matters.
Excellent online communities for asking questions and learning.
Great at string manipulation. Lots of programming is just taking one piece of data, transforming it, and putting it somewhere else.
Web libraries such as BeautifulSoup and frameworks for building websites such as Flask.
Easy to build scalable software via things like celery. Search for celeryproject.
For the most part, any scripted language is a good place to start as you don't have to worry too much about garbage collection.
If you are pursuing a software development future you'll likely have to learn Java as well. It's use in enterprises is massive. I'm also a big advocate of using things like PyCharm. They have a free community edition. The paid edition is worth it if you need to do lots of database work. Some people make the argument that an IDE will keep you from learning things, but I just don't buy that.
Imo don't bother starting with Python2.x. There are a significant number of projects that still use it but it's not worth starting with. The biggest annoyance for me with Python2 is it's lack of solid unicode support. Python3 does not have this issue.
Why I use Python regularly:
Great duct tape language, you can do almost anything with it. There is massive support and libraries for just about anything you can imagine.
Examples include:
Great database libraries that are well documented. SQLite, Postgres, MySQL, all easily handled.
Math libraries such as Numpy, SciPy, etc.
One of the top languages used for machine learning. Others include Apache Spark and R. Options, imo, decrease significantly outside of these.
People tend to say that R is better suited for statistics, however Python has caught up in my opinion. Arguments can be made that some things are still easier in R. Numpy is awesome.
Great language for use in financial analysis, image analysis, malware analysis etc, systems administration.
Multithreading and multiprocessing support.
Python, is well, pythonic. It strives to be easy to read. I find that things like Ruby (or maybe it's Ruby developers) tend, to strive for cleverness. Cleverness in programming is annoying. Especially when you are learning a project. Readability matters.
Excellent online communities for asking questions and learning.
Great at string manipulation. Lots of programming is just taking one piece of data, transforming it, and putting it somewhere else.
Web libraries such as BeautifulSoup and frameworks for building websites such as Flask.
Easy to build scalable software via things like celery. Search for celeryproject.
For the most part, any scripted language is a good place to start as you don't have to worry too much about garbage collection.
If you are pursuing a software development future you'll likely have to learn Java as well. It's use in enterprises is massive. I'm also a big advocate of using things like PyCharm. They have a free community edition. The paid edition is worth it if you need to do lots of database work. Some people make the argument that an IDE will keep you from learning things, but I just don't buy that.
Imo don't bother starting with Python2.x. There are a significant number of projects that still use it but it's not worth starting with. The biggest annoyance for me with Python2 is it's lack of solid unicode support. Python3 does not have this issue.