It's a good development practice to work on a virtual environment.
Virtual environments are completely different from each, they are just sharing the common pc, else they are totally different. The main use of virtual environments is to prevent projects from using the same versions of packages installed. Sometimes you may want to use older version of a package for a project and the newer version of the same package for a different project.
You can consider this world as a virtual environment and we "Homosapiens" are a package with different versions.
Question: Why would you want to and should use a virtual environment while installing Django or any other package that is required for a project?
Answer: Suppose you are creating two projects and you are required to use different versions of Django for both projects, then how would you do it? There come virtual environments for your help. You can do this by creating two virtual environments and install different versions of Django as required.
I hope I have answered your question properly to clear your doubts.