เมื่อไม่มีสิทธิ์ Root/Admin ใช้ 2 วิธีหลัก:
1. ใช้ sys.path ชี้ไปโฟลเดอร์ Local
>>> import os, sys
>>> file_path = 'AdditionalModules/'
>>> sys.path.append(os.path.dirname(file_path))
วางโมดูลใน AdditionalModules/ แล้ว Import ได้ปกติ
2. ใช้ Virtualenv (แนะนำ)
$ virtualenv myenv
$ source myenv/bin/activate
$ pip install package_name
ทำไม Virtualenv ดีกว่า?
- แยก Dependency ต่อโปรเจกต์ (LibFoo v1 vs v2)
- ไม่ปนเป้อนระบบและโปรเจกต์อื่น
- จัดการ Version ได้ชัดเจน
- Copy โฟลเดอร์
myenv/ไปเครื่องอื่น ใช้ได้เลย (ถ้า Arch/OS เดียวกัน)
อ่านเพิ่ม: virtualenv Documentation