Great article but I have one question that why to use virtualenv with pyenv, for me both does same thing, i.e., isolating environments. I used virtaulenv before and switched to pyenv. Can you clarify please?
To answer your question: convenience. By using the pyenv plugin of virtualenv, you can map a project to a particular virtual environment. (Look at pyenv local)
I had some instances where either I forget activating the virtual environment or I am using the wrong environment. I can prevent these errors from usingpyenv. It just allows me to be a bit lazy.