Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cài đặt module Python không có quyền root

Nếu không thể cài module trên máy (do thiếu quyền), bạn có thể dùng virtualenv hoặc lưu file module vào thư mục khác và thêm vào sys.path:

>>> import os, sys
>>> file_path = 'AdditionalModules/'
>>> sys.path.append(os.path.dirname(file_path))
>>> # Giờ Python cũng tìm trong AdditionalModules khi import module vì đã set trên PYTHONPATH.

Bạn cũng có thể dùng virtualenv tạo môi trường Python cục bộ tách biệt. Vấn đề cốt lõi là dependency và version, gián tiếp là quyền. Hãy tưởng tượng app cần version 1 của LibFoo, app khác cần version 2. Làm sao dùng cả hai? Nếu cài tất cả vào /usr/lib/python2.7/site-packages (hoặc vị trí chuẩn platform), dễ dẫn đến tình huống vô tình nâng cấp app không nên nâng cấp. Điều này cũng áp dụng cho trường hợp không có quyền cài package. Xem thêm: https://virtualenv.pypa.io/en/stable/