If you haven't written off Python completely, I would suggest giving it a second chance using uv [1] for managing environments and Python versions. In my opinion, uv is the best thing to happen to Python in 10 years.
Uv and uvx have been such game changers when we tried to distribute our python packages.
I don't want to manage environments unless I absolutely have to. In 25 years of development with other languages, I've never had a need. I'm sure it's great in places where management has decided that's a requirement, but I don't need it, and I certainly don't want it forced on me at the language level.
ruff is a blessing as well and soon ty will make type checking so much better (or pyrefly which also seems great)