- Các gói được ghim trong một yêu cầu. txt được ký hiệu là ==. Ví dụ: yêu cầu==2. 21. 0. Các gói được ghim không bao giờ được cập nhật trừ khi có lý do rất chính đáng, chẳng hạn như để sửa một lỗi hoặc lỗ hổng nghiêm trọng
- Ngược lại, các gói đã bỏ ghim thường được biểu thị bằng >=, điều này cho biết rằng gói đó có thể được thay thế bằng phiên bản mới hơn. Các gói chưa được ghim phổ biến hơn trong môi trường phát triển, nơi phiên bản mới nhất có thể cung cấp các bản sửa lỗi, bản vá bảo mật và thậm chí cả chức năng mới
Khi các gói cũ đi, nhiều trong số chúng có thể có lỗ hổng và lỗi được ghi lại đối với chúng. Để duy trì tính bảo mật và hiệu suất của ứng dụng, bạn cần cập nhật các gói này lên phiên bản mới hơn để khắc phục sự cố.
Trình quản lý gói pip có thể được sử dụng để cập nhật một hoặc nhiều gói trên toàn hệ thống. Tuy nhiên, nếu triển khai của bạn nằm trong môi trường ảo, bạn nên sử dụng trình quản lý gói Pipenv để cập nhật tất cả các gói Python.
LƯU Ý. lưu ý rằng các gói nâng cấp có thể phá vỡ môi trường của bạn bằng cách cài đặt các phần phụ thuộc không tương thích. Điều này là do pip và pipenv không giải quyết các phụ thuộc, không giống như Nền tảng ActiveState. Để đảm bảo môi trường của bạn không bị hỏng khi nâng cấp, bạn có thể đăng ký tài khoản ActiveState Platform miễn phí và nhập các yêu cầu hiện tại của mình. txt, sẵn sàng để được nâng cấp.
Danh sách kiểm tra nâng cấp gói Python
Nói chung, bạn có thể sử dụng các bước sau để thực hiện nâng cấp gói
1. Kiểm tra xem Python đã được cài đặt chưa
Trước khi có thể cập nhật gói, hãy đảm bảo rằng đã có bản cài đặt Python chứa các tệp cần thiết để cập nhật gói bằng cách làm theo các bước được nêu trong
2. Nhận danh sách tất cả các gói lỗi thời
Để tạo danh sách tất cả các gói lỗi thời
pip list --outdated
3. Nâng cấp các gói lỗi thời
Tùy thuộc vào hệ điều hành hoặc môi trường ảo của bạn, hãy tham khảo các phần sau
Cập nhật tất cả các Gói Python trên Windows
Cách dễ nhất để cập nhật tất cả các gói trong môi trường Windows là sử dụng pip kết hợp với Windows PowerShell.
- Mở trình bao lệnh bằng cách nhập 'powershell' trong Hộp Tìm kiếm của thanh Tác vụ
- Nhập.
______1
Điều này sẽ nâng cấp tất cả các gói trên toàn hệ thống lên phiên bản mới nhất có sẵn trong Chỉ mục gói Python [PyPI]
Cập nhật tất cả các Gói Python trên Linux
Linux cung cấp một số cách sử dụng pip để nâng cấp các gói Python, bao gồm grep và awk
Để nâng cấp tất cả các gói bằng pip với grep trên Ubuntu Linux
pip3 list --outdated --format=freeze | grep -v '^\-e' | cut -d = -f 1 | xargs -n1 pip3 install -U
Để nâng cấp tất cả các gói bằng pip với awk trên Ubuntu Linux
pip3 list -o | cut -f1 -d' ' | tr " " "\n" | awk '{if[NR>=3]print]' | cut -d' ' -f1 | xargs -n1 pip3 install -U
Cập nhật các gói Python trên Windows hoặc Linux
Pip có thể được sử dụng để nâng cấp tất cả các gói trên Windows hoặc Linux
- Xuất danh sách các gói đã cài đặt vào tệp yêu cầu [requirements. txt].
pip freeze > requirements.txt
- Chỉnh sửa yêu cầu. txt và thay thế tất cả '==' bằng '>='. Sử dụng lệnh 'Thay thế tất cả' trong trình chỉnh sửa
- Nâng cấp tất cả các gói lỗi thời.
pip install -r requirements.txt --upgrade
Cập nhật tất cả các gói trong môi trường ảo
Cách dễ nhất để cập nhật các gói chưa được ghim [tôi. e. , các gói không yêu cầu phiên bản cụ thể] trong môi trường ảo là chạy tập lệnh Python sau sử dụng pip
import pkg_resources from subprocess import call for dist in pkg_resources.working_set: call["python -m pip install --upgrade " + dist., shell=True]
Cập nhật tất cả các Gói trong Môi trường Pipenv
Cách đơn giản nhất để cập nhật tất cả các gói đã bỏ ghim trong một môi trường ảo cụ thể được tạo bằng pipenv là thực hiện các bước sau
- Kích hoạt trình bao Pipenv chứa các gói sẽ được nâng cấp
pipenv shell
- Nâng cấp tất cả các gói
Cách hiện đại để quản lý các gói Python – ActiveState Platform
Nền tảng ActiveState là công cụ quản lý phụ thuộc và tự động hóa bản dựng dựa trên đám mây dành cho Python. Nó cung cấp độ phân giải phụ thuộc cho
- Lõi ngôn ngữ Python, bao gồm cả Python 2. 7 và Python 3. 5+
- Các gói Python và phần phụ thuộc của chúng, bao gồm
- Phụ thuộc chuyển tiếp [tức là. , phần phụ thuộc của phần phụ thuộc]
- Các thư viện C và Fortran được liên kết để bạn có thể xây dựng các gói khoa học dữ liệu
- Phần phụ thuộc cấp hệ điều hành cho Windows, Linux và macOS
- Các phần phụ thuộc được chia sẻ [tức là. , OpenSSL]
Nền tảng ActiveState là giải pháp quản lý gói Python duy nhất không chỉ giải quyết các phần phụ thuộc mà còn cung cấp giải pháp cho các xung đột về phần phụ thuộc
Chỉ cần làm theo lời nhắc hướng dẫn sẽ giải quyết xung đột, loại bỏ sự phụ thuộc
Bạn có thể dùng thử miễn phí Nền tảng ActiveState bằng cách tạo tài khoản bằng email hoặc thông tin đăng nhập GitHub của bạn. Bắt đầu bằng cách tạo một dự án Python mới, chọn phiên bản mới nhất áp dụng cho dự án, hệ điều hành của bạn và bắt đầu thêm các gói. Hoặc bắt đầu bằng cách nhập các yêu cầu của bạn. txt và tạo phiên bản Python với tất cả các gói bạn cần. Nền tảng sẽ tự động chọn các phiên bản gói phù hợp cho môi trường của bạn để đảm bảo tính bảo mật và khả năng tái sản xuất
Xem hướng dẫn này để tìm hiểu cách sử dụng ActiveState Platform để tạo Python 3. 9, sau đó sử dụng Giao diện dòng lệnh của Nền tảng [Công cụ trạng thái] để cài đặt và quản lý nó
Chỉ cần chạy lệnh sau để cài đặt Python 3. 9 và trình quản lý gói của chúng tôi, State Tool
các cửa sổ
powershell -Command "& $[[scriptblock]::Create[[New-Object Net.WebClient].DownloadString['//platform.activestate.com/dl/cli/install.ps1']]] -activate-default ActiveState-Labs/Python-3.9Beta"
Linux
pip freeze | %{$_.split['=='][0]} | %{pip install --upgrade $_}
0Now you can run state install . Learn more about how to use the State Tool to manage your Python environment. Or sign up for a free demo and let us show you how it can help improve your dev team’s workflow by compiling Python packages and resolve dependencies in minutes.
Bài đọc được đề xuất
Cách gỡ cài đặt các gói Python
Cách cài đặt thủ công các gói Python
Liên kết liên quan
Cách tải xuống các gói Python
Cách cài đặt các gói Python bằng tập lệnh
Cách liệt kê các gói Python đã cài đặt
Hiểu các gói Python
Tìm hiểu thêm về ActivePython
Các câu hỏi thường gặp
Bạn có thể pip cập nhật tất cả các gói Python trên toàn hệ thống lên phiên bản mới nhất có sẵn trong Chỉ mục gói Python [PyPI] bằng cách chạy lệnh sau.
______11
GHI CHÚ. Lệnh trên giả định tất cả các phụ thuộc được liệt kê trong yêu cầu. txt có thể nâng cấp được [tức là. được đặt thành >= một số phiên bản thay vì == một số phiên bản]
Hiểu các gói, mô-đun và thư viện Python
Để cập nhật các gói riêng lẻ trong Python, hãy chạy lệnh sau.
______12
Trong đó packagename là tên gói cần nâng cấp
Tìm hiểu thêm về cách cài đặt các gói Python trên Windows
Để cài đặt tất cả các gói Python cùng một lúc cho dự án của bạn, trước tiên hãy tạo một yêu cầu. txt chứa tất cả các gói bạn cần, sau đó chạy lệnh sau.
______13
Tìm hiểu thêm về các yêu cầu. txt và các phụ thuộc
Không, bạn không thể nâng cấp các phiên bản Python bằng pip. Pip chỉ có thể được sử dụng để cập nhật các gói, không phải Python
Nếu bạn muốn nâng cấp Python, hãy tải xuống phiên bản mới nhất như trình cài đặt ActivePython cho Windows, Mac hoặc Linux