3 ms·
I've already learned Python enough to where I can get almost anything I need to do with it done. This is probably the place you'll want to get to. Someone gives
by ateesdalejr 9y ago
I've already learned Python enough to where I can get almost anything I need to do with it done. This is probably the place you'll want to get to. Someone gives you a problem and then you solve it.
Python's development cycle is so fast that problem solving and debugging is a breeze. (All you need to do is write some code and then run it. No compile/run phase.) But then there comes a time when Python is just plain too slow for what you want to do. For example Image processing/Backend for web/Game development with intensive graphics. After this I found that it was time for me to start learning a faster compiled language such as C. Moving from python to C is a real pain. This is mostly because of all the really nice built in types: dynamic lists, strings, etc. that you get with Python already.
What's really cool is that Python allows integration between C libraries and python code. (ctypes) You can write something that may run really slow in pure Python. After that you can find the slowest parts with a profiler and replace them with external C library calls. (That you've written.)
In the end you end up with the lightning fast Python dev cycle plus the great optimizations and speed that C/native code gives.
In short form, Python is a great first language. C is a great first language too. You can have the best of both worlds with ctypes.