Virtual environments are, sadly, absolutely crucial for Python beginners to get their heads around if they are to do anything more advanced then "hello world".
When I'm getting someone started I usually say:
"There is a magic incantation involved in Python development called 'activating your virtual environment' - if stuff isn't working as you expect, check that you have done this. Development environments are the hardest thing about learning to program. I'm so sorry."