หากคุณมีโปรเจ็กต์เพียงไม่กี่โปรเจ็กต์ทุกๆครั้งจะไม่มีอะไรหยุดคุณจากการสร้าง Virtualenv ใหม่สำหรับแต่ละโปรเจ็กต์และใส่แพ็กเกจของคุณไว้ข้างใน:
/foobar
/bin
{activate, activate.py, easy_install, python}
/include
{python2.6/...}
/lib
{python2.6/...}
/mypackage1
__init__.py
/mypackage2
__init__.py
ข้อดีของแนวทางนี้คือคุณสามารถค้นหาสคริปต์เปิดใช้งานที่เป็นของโครงการได้ตลอดเวลา
$ cd /foobar
$ source bin/activate
$ python
>>> import mypackage1
>>>
หากคุณตัดสินใจที่จะจัดระเบียบให้มากขึ้นคุณควรพิจารณาใส่คุณธรรมทั้งหมดของคุณไว้ในโฟลเดอร์เดียวและตั้งชื่อแต่ละรายการตามโครงการที่คุณกำลังดำเนินการอยู่
/virtualenvs
/foobar
/bin
{activate, activate.py, easy_install, python}
/include
{python2.6/...}
/lib
{python2.6/...}
/foobar
/mypackage1
__init__.py
/mypackage2
__init__.py
ด้วยวิธีนี้คุณสามารถเริ่มต้นใหม่ด้วย Virtualenv ใหม่เมื่อมีสิ่งผิดปกติเกิดขึ้นและไฟล์โครงการของคุณจะปลอดภัย
ข้อดีอีกประการหนึ่งคือหลายโปรเจ็กต์ของคุณสามารถใช้ Virtualenv เดียวกันได้ดังนั้นคุณไม่จำเป็นต้องทำการติดตั้งซ้ำแล้วซ้ำอีกหากคุณมีการอ้างอิงจำนวนมาก
$ cd /foobar
$ source ../virtualenvs/foobar/bin/activate
$ python
>>> import mypackage2
>>>
สำหรับผู้ใช้ที่ต้องตั้งค่าและฉีกขาดคุณธรรมเป็นประจำควรดูที่ Virtualenvwrapper
http://pypi.python.org/pypi/virtualenvwrapper
ด้วย Virtualenvwrapper คุณสามารถ
* create and delete virtual environments
* organize virtual environments in a central place
* easily switch between environments
คุณไม่ต้องกังวลอีกต่อไปว่าคนเก่งของคุณอยู่ที่ไหนเมื่อทำงานในโครงการ "foo" และ "bar":
/foo
/mypackage1
__init__.py
/bar
/mypackage2
__init__.py
นี่คือวิธีที่คุณเริ่มทำงานในโครงการ "foo":
$ cd foo
$ workon
bar
foo
$ workon foo
(foo)$ python
>>> import mypackage1
>>>
จากนั้นเปลี่ยนไปใช้ "bar" ของโปรเจ็กต์ก็ทำได้ง่ายๆดังนี้:
$ cd ../bar
$ workon bar
(bar)$ python
>>> import mypackage2
>>>
สวยเนี๊ยบใช่มั้ย?