Yes, use pipenv or poetry. I don't know why there are still wars about this going on.
Unfortunately there are people who complain that pipenv makes the ecosystem as bad as npm, which frankly is an improvement.
Not sure why this is downvoted. Only the uninformed are using (usually multiple, lol) requirements.txt files + raw `pip` and managing venvs themselves nowadays.
There's a huge rift between hobbyist Python users and professional developers. That's okay, but the former group doesn't always like it when the latter group chimes in...