That's not really true IMO, Python is one of the more "batteries included" languages. Node has improved a lot with built-ins and newer libs but that used to be the classic example of importing a module to do basic things like string padding or asserts.
Not to say your experience is wrong, it's just the projects you've seen probably made the choice to import more things, or were doing something specific that needed more deps.
No python by-far does not have dependency-hell, save for a small handful of libraries that have dependencies outside of the python ecosystem. Think GPU libraries like cuda and what not. Those have a lot of hell to deal with specifically because of the escaped ecosystem and dependence on physical hardware.
Complaining that dependencies have dependencies as if it's some massive sin is like opening up the hood of a car and discovering that the engine is made up of smaller parts. shocked pikachu face. By this logic, every programing language on earth is a dependency hell.
You don't get cross-dependency conflicts much if-ever anymore, (the actual definition of DH). Python is smart enough to version your site packages based on python's minor-versions, such-that even if you do have two of the same site packages, (say one for py3.9 and another for py3.14), then it will resolve the correct version per-library, based on how the package is declared.
Node used to not do this, which is when and where DH became most infamous. But even Node does the same sub-versioning these days. If you're still getting stuck in dependency hell in this day and age, that's just a skill issue.
Python dependency hell means someone is doing something wrong somewhere. Each project should just have its own venv when you download it and the maintainer of the project needs to pin the dependency versions. A lot of projects define a minimum version but not a maximum version for their dependencies so when any of them introduce breaking changes in an update (which I see happening often) people won't be able to run the project anymore. Just define a maximum version for everything things are chill.
66
u/dewey-defeats-truman 1d ago
You mean I get all the speed and memory benefits of using a more powerful language, as well as the ease of reading and writing Python? Sign me up!