title: pipenv or virtualenv , which one is better to use?
body: <p>I am really frustrated by choosing which one to build my django projects on...
  what are the cons and pros of each so that i can choose one.</p>
  
  <p>on one hand some websites suggest using virtualenv , while on the other hand on quora some people suggest to use pipenv , some people say pipenv is not what the official site claims to be good, while other sites say this is the best ever way to build you'r django projects.</p>
  
  <p>could you please help me get out of this headache ?</p>
  
  <p>NOTE:<strong>The reason why I am asking this question is because...there might be some advantages in either of them , that may make troubles in further development of web-apps according to my researches on different websites.</strong></p>
  
  <p>This is the process of building a django project with pipenv :</p>
  
  <pre><code>pipenv install django==2.1
  
  pipenv shell
  
  django-admin startproject project .
  
  python mange.py runserver  # check wether all things are alright or not.
  
  #Ctrl+c #go out of the server
  
  python mange.py startapp app #creat an app in your project
  
  # Add your app in settings.py at project folder by finding Installed_apps 
  variable containing a list
  of installed apps like this and add another app url like 
  this===&gt;'app.apps.AppConfig'
  
  #Then go to views.py in your project's app folder and do this
  
  from django.http import HttpResponse
  
  def homePageView(request):
  return HttpResponse('Hello, World!')
  
  #then make a urls.py in your project's app folder and type this in it
  
  from django.urls import path
  from .views import homePageView
  
  urlpatterns = [
      path('', homePageView, name = 'home')
           ]
  #The come to urls.py in project folder and add include to the imported 
  functions
  
  from django.contrib import admin
  from django.urls import path, include#&lt;== I mean this one
  
  #Then add another path to urlpatterns containing a list
  
  urlpatterns = [
  path('admin/', admin.site.urls),
  path('', include('shipping.urls'))#&lt;==I mean this one
    ]
  </code></pre>
  
  <p>This is the process for virtualenv:</p>
  
  <pre><code>python -m venv ll_env
  ll_env\Scripts\activate
  pip install django
  django-admin startproject learning_log .
  ython manage.py startapp learning_logs
  </code></pre>
  
  <p>but there is quite a many difference between them that makes me worry which one should be used.</p>