Это не одно и то же.
source <venv_name>/bin/activate
Это меняет место разрешения пакетов сайта. Это достигается с помощью одного очень простого хака: добавление в каталог bin-каталога venv переменной среды ($ PATH), которая влияет на то, где разрешается команда python
.
cd <venv_name>/bin/
Изменение dir на <venv_name>/bin
сделает не доступным для импорта пакетов, установленных в venv
(которые находятся в ../lib
). Команда python
по-прежнему преобразуется в /usr/local/bin/python
(или там, где находится ваш системный интерпретатор python), и интерпретатор по-прежнему будет использовать системные пакеты сайта. Вы не увидите библиотеку Венвы.
Проверьте вывод python -m site
внутри и снаружи вашего virtualenv, чтобы увидеть разницу.