Maybe I've just lived a sheltered life, but I've never heard speed being used as a serious argument against Python. Well, maybe on silly discussions where someone really disliked Python, but anyone who actually cares about efficiency is using C.
With the excellent Python/Rust interop there is now another great alternative to rewriting the heavy parts in C. But sometimes the performance sensitive part spans most of your program
It is a slow interpreted language, but that isn't the only argument against it.
It has abandoned backwards compatiblity in the past and there are still annoying people harassing you with obsolete python versions.
The language and syntax still heavily lean towards imperative/procedural code styles and things like lambdas are a third class citizen syntax wise.
The strong reliance on C based extensions make CPython the only implementation that sees any usage.
CPython is a pain to deploy crossplatform, because you also need to get a C compiler to compile to all platforms.
The concept behind venv is another uniquely bad design decision. By default, python does the wrong thing and you have to go out of your way and learn a new tool to not mess up your system.
Then there are the countless half baked community attempts to fix python problems. Half baked, because they decide to randomly stop solving one crucial aspect and this gives room for dozens of other opportunistic developers to work on another incomplete solution.
It was always a mystery to me that there are people who would voluntarily subject themselves to python.
At least mine. Also because of the typing. It's probably improved, but I remember being very disappointed a few years ago when the bloody thing wouldn't correctly infer the type of zip(). And that's ignoring the things that'll violate the specified type when you interface with the outside world (APIs, databases).
> anyone who actually cares about efficiency is using C.
Python is so much slower than e.g. Go, Java, C#, etc. There's no need to use C to get a better performance. It's also very memory hungry, certainly in comparison to Go.
Not sure, what you mean by thread-safe language, but one of the nice things about Java is that it made (safe) multi-threading comparatively easy.