/ / Tại sao sử dụng Pipenv để tạo môi trường Python?

Tại sao sử dụng Pipenv để tạo môi trường Python?

Lỗi phụ thuộc có thể là cơn ác mộng tồi tệ nhất của nhà phát triển. Bạn có thể mất rất nhiều thời gian để nâng cấp và hạ cấp các phụ thuộc trong một nỗ lực vô ích để giải quyết các vấn đề.


Pipenv là một trình quản lý phụ thuộc hiệu quả cho các dự án Python. Nó thiết lập và quản lý sự phụ thuộc của môi trường ảo trong cả quá trình phát triển và sản xuất.

Pipenv xử lý việc thêm và loại bỏ các gói phụ thuộc để giảm xung đột. Nó cũng cải thiện Pip với các biện pháp bảo mật tăng cường, tùy chọn lập phiên bản và cập nhật gói.


Tại sao sử dụng Pipenv trên Virtualenv?

Virtualenv là công cụ môi trường ảo Python phổ biến nhất và có nhiều lựa chọn thay thế khác. Những lợi thế của việc sử dụng Pipenv thay vì các công cụ này bao gồm những điều sau:

  • Bạn có thể cài đặt các gói không có phiên bản. Tính năng không lập phiên bản làm giảm xung đột khi làm việc với các phiên bản phụ thuộc khác nhau.
  • Pipenv kết hợp Pip và Virtualvenv; bạn không còn sử dụng chúng một cách riêng biệt.
  • Pipenv loại bỏ tệp tin request.txt. Pipenv tạo Pipfile để theo dõi các phụ thuộc và Pipfile.lock để xây dựng ứng dụng.
  • Nó hỗ trợ thiết lập môi trường ảo nhanh chóng và dễ dàng.

Pipenv thêm nhiều hơn các tệp bổ sung vào Pip. Trong phần tiếp theo, hãy tìm hiểu về một số tính năng bổ sung giúp PIpenv trở thành một gói toàn diện.

Nâng cấp các gói đã cài đặt

Bạn có thể muốn nâng cấp các gói đã cài đặt nếu có bản phát hành mới. Các phiên bản cập nhật có thể sẽ có các tính năng mới để tối ưu hóa ứng dụng của bạn.

Để tìm ra các bản cập nhật mới cho các phần phụ thuộc, hãy chạy lệnh sau:

pipenv update 

Nếu có các bản cập nhật mới, bạn có thể cần phải nâng cấp các gói. Có hai cách để nâng cấp gói. Bạn có thể nâng cấp mọi thứ hoặc chỉ có thể chọn nâng cấp một số gói nhất định.

Để nâng cấp mọi thứ, hãy chạy lệnh cập nhật sau:

pipenv update

Để chỉ nâng cấp các gói cụ thể, hãy chạy mã như minh họa bên dưới:

pipenv update <name of package>  

Nhập các gói từ tệp tests.txt

Pipenv sẽ nhập nội dung của tệp tin request.txt nếu được cài đặt trong cùng một dự án. Khi bạn chạy cài đặt pipenvnó nhập và tạo một Pipfile.

Pipenv cũng cho phép bạn nhập tệp tin request.txt. Bạn cần chỉ định vị trí của tệp tin request.txt khi cài đặt, như hình minh họa:

pipenv install -r path/to/requirements.txt  

Tệp tests.txt có thể sẽ đi kèm với các gói có số phiên bản. Bạn có thể gỡ bỏ và cài đặt các gói mới. Nếu bạn có ý định giữ các gói đã được tạo phiên bản, hãy chạy lệnh sau:

pipenv lock 

Các tính năng bảo mật được cải thiện của Pipenv

Pipfile.lock trong Pipenv tối ưu hóa các cải tiến bảo mật mới trong Pip. Pipfile.lock tạo ra các băm sha256 của mọi gói đã tải xuống.

Pipenv đảm bảo bạn không tải xuống các tệp có hại khi ở trên mạng bị xâm phạm.

Chỉ định các phiên bản Python

Với Pipenv, bạn có thể chọn phiên bản Python ưa thích cho dự án của mình. Bạn có thể muốn chỉ định xem bạn đã cài đặt một số phiên bản Python hay chưa.

Để sử dụng Python3

pipenv --python 3  
pipenv --python 3.8  

Khi bạn chỉ định phiên bản Python, Pipenv sẽ quét hệ thống để tìm phiên bản Python đó. Nếu bạn không chỉ định, Pipenv sẽ chọn phiên bản Python mới nhất được cài đặt trên máy của bạn. Tìm hiểu thêm từ tài liệu chính thức của Pipenv.

Cài đặt và sử dụng Pipenv trong một ví dụ thực tế

Tiếp theo, tiến hành cài đặt và học cách sử dụng Pipenv một cách thực tế.

1. Cài đặt Pipenv

Trước khi cài đặt Pipenv, trước tiên bạn cần cập nhật tất cả các phần phụ thuộc đã cài đặt. Chạy các bản cập nhật bằng lệnh sau:

sudo apt-get update

Tiếp theo, cài đặt Pipenv bằng lệnh sau:

pip3 install pipenv

Nếu không có lỗi, có nghĩa là cài đặt đã thành công. Để xác nhận cài đặt, hãy kiểm tra phiên bản Pipenv bằng lệnh sau:

pipenv --version #output pipenv,version 2022.8.30

Nếu trước đây bạn đã sử dụng Pip, Pipenv tương thích với cú pháp Pip. Ví dụ: nếu bạn muốn cài đặt một gói, bạn có thể sử dụng cài đặt pipenv thay vì cài đặt pip.

2. Tạo môi trường ảo

Bạn phải kích hoạt môi trường ảo của dự án trong thư mục dự án. Pipenv quản lý các phụ thuộc trên cơ sở từng dự án.

Trên dòng lệnh, điều hướng thư mục dự án của bạn bằng lệnh sau.

cd myproject

Tiếp theo, mở thư mục trong trình chỉnh sửa mã. Sau đó cài đặt các phụ thuộc Pipenv bằng lệnh sau:

pipenv install requests

Cài đặt thành công sẽ như hình dưới đây:

Bảng điều khiển hiển thị môi trường ảo pipenv đã được tạo thành công

Các phụ thuộc Pipenv tạo ra một môi trường ảo cho dự án. Trong thư mục dự án, bạn sẽ nhận thấy rằng Pipenv đã tạo Pipfiles. Tiếp theo, kích hoạt môi trường ảo.

3. Kích hoạt môi trường ảo

Bạn phải kích hoạt môi trường ảo mà ứng dụng sẽ chạy. Chạy vỏ pipenv yêu cầu để vào môi trường ảo Pipenv.

pipenv shell

Lưu ý những thay đổi trên dòng lệnh sau khi chạy vỏ pipenv. Một môi trường ảo, được đặt tên theo thư mục, xuất hiện ở bên trái trong dấu ngoặc.

(installpipenv) sandra@sandra-Lenovo:~/MUOfiles/installpipenv$

Môi trường Pipenv của bạn hiện đang hoạt động!

Bây giờ bạn có thể bắt đầu cài đặt các gói và phụ thuộc ưa thích của mình. Hãy cài đặt thư viện Django. Chạy lệnh sau trên thiết bị đầu cuối để cài đặt Django.

pipenv install django

Cài đặt thành công sẽ như trong hình bên dưới.

Bảng điều khiển hiển thị cài đặt thành công django

Khi bạn nhấp vào Pipfile, bạn sẽ thấy thư viện Django được cài đặt mà không có số phiên bản.

[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"

[packages]
requests = "*"
django = "*"

[dev-packages]

[requires]
python_version = "3.10"

Đó là cách Pipenv sẽ quản lý tất cả các phụ thuộc của bạn.

Chỉ định các phiên bản gói

Mặc dù Pipenv cài đặt các gói không có phiên bản, nhưng bạn có thể cài đặt phiên bản ưu tiên. Ví dụ: nếu bạn muốn cài đặt Django 4.1.1, bạn có thể làm như sau:

pipenv install django==4.1.1  

Tuy nhiên, điều này sẽ khóa phiên bản; để có cách tiếp cận linh hoạt hơn, hãy sử dụng ~ = nhà điều hành:

pipenv install django~=4.1.1  

Bạn có thể yêu cầu bất kỳ phiên bản nào bằng hoặc lớn hơn một phiên bản cụ thể bằng cách sử dụng > =:

pipenv install django>=3.1.1  

Pipenv là tốt nhất để quản lý gói

Pipenv là một công cụ sáng tạo để cài đặt và quản lý các phần phụ thuộc của dự án. Khả năng xử lý các phụ thuộc không có phiên bản của nó ngăn ngừa xung đột giữa các phiên bản khác nhau.

Pipenv kết hợp sức mạnh của Pip và Venv trong một lệnh duy nhất. Pipfiles thay thế tệp tin request.txt xử lý các phần phụ thuộc trong các phiên bản Python cũ hơn. Các biện pháp bảo mật của nó bảo vệ ứng dụng của bạn khỏi các bản tải xuống có hại.

Giờ đây, bạn có thể sử dụng Pipenv để tối ưu hóa và cải thiện trải nghiệm phát triển của mình. Với các bản cập nhật mới, Pipenv tiếp tục là một công cụ tuyệt vời để quản lý các dự án Python.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *