Cập nhật Python trong bộ đệm

Trang chủ » Tài nguyên » Đọc nhanh » Cách quản lý phần phụ thuộc Python bằng Conda

Cập nhật mới nhất. Ngày 12 tháng 7 năm 2022

Cách quản lý các phụ thuộc Python với Conda

Conda là một công cụ quản lý gói, phụ thuộc và môi trường cho Anaconda Python, được sử dụng rộng rãi trong cộng đồng khoa học, đặc biệt là trên nền tảng Windows, nơi việc cài đặt các tiện ích mở rộng nhị phân có thể gặp khó khăn.  

Conda giúp quản lý các phụ thuộc Python theo hai cách chính

  • Cho phép tạo môi trường cô lập từng dự án, do đó ngăn ngừa xung đột phụ thuộc giữa các dự án
  • Cung cấp nhận dạng xung đột phụ thuộc tại thời điểm cài đặt gói, do đó ngăn chặn xung đột trong các dự án/môi trường.  

Conda so với Pip, Virtualenv, Venv & Pyenv như thế nào

Conda cung cấp nhiều tính năng có trong pip, virtualenv, venv và pyenv. Tuy nhiên, đây là một công cụ hoàn toàn riêng biệt sẽ quản lý các phụ thuộc Python theo cách khác và chỉ hoạt động trong môi trường Conda

Conda phân tích từng gói để biết các phụ thuộc tương thích và cách cài đặt chúng mà không có xung đột. Nếu có xung đột, Conda sẽ cho bạn biết rằng quá trình cài đặt không thể hoàn tất. Để so sánh, Pip cài đặt tất cả các phụ thuộc gói bất kể chúng có xung đột với các gói khác đã được cài đặt hay không. Để tránh xung đột phụ thuộc, hãy sử dụng các công cụ như virtualenv, venv hoặc pyenv để tạo môi trường Anaconda bị cô lập

Để biết thông tin về việc sử dụng pip trong môi trường conda, hãy tham khảo bài đăng Quickread này. Cách thêm gói trong Anaconda Python. Conda Vs. Pip

Nền tảng ActiveState của chúng tôi sẽ xử lý các phần phụ thuộc cho bạn. Nó cũng giúp loại bỏ các vấn đề "hoạt động trên máy của tôi", đơn giản hóa Readme và cho phép bạn tiếp cận các phần viết mã thú vị nhanh hơn. Sử dụng nó cho thời gian chạy Python, Perl và Tcl cho Linux, Windows và MacOS. Bắt đầu miễn phí

Sử dụng Lưu

Conda là một công cụ dòng lệnh và được bao gồm trong bản phân phối Anaconda. Nó có thể được chạy từ Dấu nhắc Anaconda trong Windows hoặc trong thiết bị đầu cuối Linux. Việc sử dụng Conda thường nhanh hơn và thiết thực hơn so với Anaconda Navigator dựa trên GUI, cũng có thể được sử dụng để phụ thuộc và quản lý môi trường

Trước khi làm việc với Conda, bạn luôn nên đảm bảo rằng các phiên bản mới nhất của Conda và Anaconda đã được cài đặt. Mở Anaconda Prompt hoặc thiết bị đầu cuối Linux và nhập

$ conda update conda --all
$ conda update anaconda

Conda có thể được sử dụng để tạo, xuất, liệt kê, xóa và cập nhật các môi trường có các phiên bản Python khác nhau và các gói khác nhau được cài đặt trong đó

To create a new Conda Python environment named and install python 3.8, open an Anaconda Prompt or terminal and enter:

$ conda create --name  python=3.8

Để tạo một môi trường với một gói cụ thể

$ conda create -n  

Nếu conda gặp xung đột phụ thuộc trong quá trình cài đặt gói, nó sẽ gắn cờ cho người dùng. Ví dụ

$ conda install -c menpo opencv=2.4.11
Fetching package metadata .............
Solving package specifications: .
UnsatisfiableError: The following specifications were found to be in conflict:
opencv 2.4.11* -> numpy 1.9* -> python 2.6* -> openssl 1.0.1*
python 3.6*
Use "conda info " to see the dependencies for each package.

Như đã đề xuất trong thông báo lỗi, bạn có thể sử dụng lệnh conda info để xem thủ công các phần phụ thuộc của từng gói và hy vọng tìm thấy các phiên bản a] tương thích với nhau và b] hoạt động với dự án của bạn

Cách kích hoạt môi trường với Conda

Để 'kích hoạt một môi trường' là chuyển từ môi trường này sang môi trường khác. Cách tốt nhất là tạo một môi trường mới cho mỗi dự án mà bạn thực hiện, vì vậy việc chuyển đổi môi trường có thể được coi là chuyển đổi giữa các dự án

Để kích hoạt một môi trường mới có Python 3. 8, và chuyển sang nó

Linux.  

$ source activate 

các cửa sổ.  

$ activate 

Để cài đặt gói trong môi trường hiện đang được kích hoạt

$ conda install 

Cách xác định môi trường hiện tại với Conda

Môi trường hiện tại hoặc đang hoạt động được hiển thị trong dấu ngoặc đơn [] hoặc dấu ngoặc vuông [] ở đầu Dấu nhắc Anaconda hoặc thiết bị đầu cuối

[] $

Khuyến nghị để tránh xung đột phụ thuộc với Conda

Có hai quy tắc đơn giản để làm theo

  1. Luôn tạo môi trường mới cho từng dự án
  2. Cài đặt tất cả các gói bạn cần trong môi trường mới cùng một lúc. Cài đặt từng gói một có thể dẫn đến xung đột phụ thuộc

Để tạo một môi trường có phiên bản Python cụ thể và nhiều gói bao gồm gói có phiên bản cụ thể

________số 8

Ngoài ra, bạn có thể sử dụng conda để cài đặt tất cả các gói theo yêu cầu. tập tin txt. Bạn có thể lưu một yêu cầu. txt từ một môi trường hiện có hoặc tạo thủ công một yêu cầu mới. txt cho một môi trường khác

Để tạo một yêu cầu conda. txt từ một môi trường hiện có

  1. Kích hoạt môi trường dự án của bạn. Xem phần bên trên có tiêu đề “Cách kích hoạt môi trường với Conda” để biết chi tiết
  2. Liệt kê các gói đang sử dụng trong môi trường kích hoạt
$ conda list
  1. Lưu thông tin gói vào một yêu cầu. txt. tập tin
$ conda create --name  python=3.8
0

Lưu các yêu cầu. ví dụ về txt

$ conda create --name  python=3.8
1
  1. Cài đặt các yêu cầu. txt vào môi trường dự án mới
$ conda create --name  python=3.8
2

Để biết thêm thông tin về cách làm việc với conda, hãy tham khảo. Cách thêm gói trong Anaconda Python

Bài đọc được đề xuất

Quản lý phụ thuộc với Pip, Trình quản lý gói của Python

Cách quản lý tốt nhất các phụ thuộc Python

Liên kết liên quan

Hiểu các gói Python

Cách sử dụng công cụ quản lý phụ thuộc Python

Cách liệt kê các gói Python – Cài đặt toàn cầu so với cài đặt cục bộ

Cách cài đặt Pip trên Windows

Quản lý các phụ thuộc Python – Mọi thứ bạn cần biết

Các câu hỏi thường gặp

một yêu cầu. txt thường được sử dụng để đơn giản hóa việc cài đặt nhiều gói vì bạn có thể cài đặt tất cả chúng bằng một lệnh duy nhất. Để lưu các yêu cầu cài đặt. txt, hãy chạy lệnh sau

$ conda create --name  python=3.8
3

Tất cả các gói được liệt kê trong yêu cầu của bạn. txt sẽ được cài đặt vào môi trường được chỉ định

Để biết thêm thông tin về cách làm việc với môi trường conda, hãy xem Cách thêm gói trong Anaconda Python

Hoặc tìm hiểu thêm về ActivePython dưới dạng giải pháp thay thế Anaconda, cho phép bạn cài đặt các yêu cầu. txt và tự động hóa độ phân giải phụ thuộc

Nếu bạn đã có một môi trường conda và muốn tạo một yêu cầu. txt chứa tất cả các gói trong môi trường đó, bạn có thể chạy lệnh sau

$ conda create --name  python=3.8
4

Các yêu cầu kết quả. txt. tệp sẽ chứa danh sách tất cả các tên gói và phiên bản

Để biết thêm thông tin về cách làm việc với conda, hãy xem Cách thêm gói trong Anaconda Python

một yêu cầu. txt thường được sử dụng để đơn giản hóa việc cài đặt nhiều gói vì bạn có thể cài đặt tất cả chúng bằng một lệnh duy nhất. Để dùng thử, chỉ cần

  1. Tạo một yêu cầu. tập tin txt
  2. Nhập tên của [các] gói bạn muốn cài đặt và tùy ý bao gồm phiên bản [nếu bạn không bao gồm số phiên bản, pip sẽ cài đặt bản mới nhất]
  3. Chạy một trong hai.
    ______15
    $ conda create --name  python=3.8
    3 nếu bạn đang làm việc với Anaconda

Để biết thêm thông tin, hãy xem bài viết Cách thêm gói trong Anaconda Python. Hoặc tìm hiểu thêm về quản lý phụ thuộc bằng cách sử dụng pip

Chạy lệnh

$ conda create --name  python=3.8
5 sẽ cài đặt các phụ thuộc được liệt kê trong yêu cầu của bạn. tập tin txt. Điều này có thể giúp tiết kiệm thời gian đáng kể thay vì cài đặt từng gói một và đảm bảo rằng phiên bản chính xác của từng gói được cài đặt

Chủ Đề