Hướng dẫn anaconda and python difference - sự khác biệt giữa anaconda và trăn

Ngày 7 tháng 7 năm 2022

Sự khác biệt chính giữa Python và Anaconda là gì? Đây là những gì bạn cần biết.

Python là một ngôn ngữ lập trình đa năng được sử dụng trong mọi thứ, từ học máy đến thiết kế web. Nó sử dụng pip [từ viết tắt đệ quy cho "PIP Cài đặt gói" hoặc "PIP cài đặt Python"] làm trình quản lý gói của nó để tự động hóa cài đặt, cập nhật và loại bỏ gói.

Anaconda là một bản phân phối [một gói] của Python, R và các ngôn ngữ khác, cũng như các công cụ phù hợp với khoa học dữ liệu [tức là, Jupyter Notebook và Rstudio]. Nó cũng cung cấp một trình quản lý gói thay thế có tên conda.

Vì vậy, khi bạn cài đặt Python, bạn sẽ nhận được ngôn ngữ lập trình và pip [có sẵn trong Python 3.4+ và Python 2.7.9+], cho phép người dùng cài đặt các gói bổ sung có sẵn trên chỉ mục gói Python [hoặc PYPI].

Ngược lại, với Anaconda, bạn nhận được Python, R, hơn 250 gói được cài đặt sẵn, công cụ khoa học dữ liệu và giao diện người dùng đồ họa Anaconda Navigator.

Do đó, sự khác biệt chính giữa Python và Anaconda là cái trước là ngôn ngữ lập trình và sau này là phần mềm để cài đặt và quản lý Python và các ngôn ngữ lập trình khác [như R].

Trong bài viết này, chúng tôi sẽ thảo luận về cách sử dụng Anaconda để quản lý và cài đặt các gói cũng như khi nào nên sử dụng pip hoặc conda. Hơn nữa, chúng tôi sẽ thảo luận về sự khác biệt giữa các giống conda [tức là, ____10 và

pip install pandas==1.2.5 seaborn
1].

Người quản lý gói và môi trường

Xin lưu ý rằng tôi đang sử dụng Linux làm hệ thống chính của mình vì nó rất thuận tiện cho các dự án lập trình [cùng với các macOS], vì vậy trên Windows, các lệnh sau đây có thể khác nhau. Tôi khuyên bạn nên cài đặt Anaconda và sử dụng lời nhắc lệnh Anaconda để chạy các lệnh trên Windows.

Trong khoa học dữ liệu và nói chung trong lập trình, chúng tôi sử dụng các môi trường ảo để cô lập các phụ thuộc gói được sử dụng trong các dự án khác nhau để chúng không xung đột với nhau. Ví dụ: bạn có thể có hai dự án: một sử dụng gấu trúc 0,25 và các gấu trúc khác 1,5. Bạn không thể cài đặt cả hai phiên bản trên toàn hệ thống, nhưng bạn có thể tạo các môi trường bị cô lập cho từng dự án này, kích hoạt chúng và bắt đầu mã hóa.

Tuy nhiên, lưu ý rằng có thể cài đặt nhiều phiên bản toàn hệ thống Python với

pip install pandas==1.2.5 seaborn
2 và sử dụng plugin pyenv-virtualenv của nó để quản lý môi trường ảo trên UNIX.it is possible to install multiple versions of Python system-wide with
pip install pandas==1.2.5 seaborn
2 and use its plugin pyenv-virtualenv to manage virtual environments on Unix.

Cả Python và Anaconda đều cung cấp các giải pháp để tạo và quản lý gói môi trường ảo.

Python

Python kết hợp một mô-đun tích hợp

pip install pandas==1.2.5 seaborn
3 [từ "môi trường ảo"], có thể tạo ra các bộ phiên bản python và gói liên kết bị cô lập.

  1. Chạy
    pip install pandas==1.2.5 seaborn
    4 để tạo môi trường. Ví dụ: lệnh
    pip install pandas==1.2.5 seaborn
    5 sẽ tạo ra một môi trường ảo trong thư mục
    pip install pandas==1.2.5 seaborn
    6 nằm trong thư mục làm việc hiện tại.
  2. Kích hoạt nó bằng cách chạy
    pip install pandas==1.2.5 seaborn
    7.
  3. Bạn sẽ thấy tên của môi trường trong ngoặc đơn xuất hiện trước tên người dùng của bạn.
  4. Liệt kê các gói được cài đặt trong môi trường này bằng cách chạy
    pip install pandas==1.2.5 seaborn
    8. Hiện tại không có nhiều môi trường mới.
  5. Hủy kích hoạt nó với lệnh
    pip install pandas==1.2.5 seaborn
    9.
python3 -m venv ./venv_dir
source venv_dir/bin/activate
pip list

Package       Version
------------- -------
pip           20.0.2 
pkg-resources 0.0.0  
setuptools    44.0.0 

Bây giờ, hãy để cài đặt một vài gói trong môi trường này. Chúng ta có thể làm điều này với pip, nhưng trước tiên, chúng ta phải kích hoạt môi trường một lần nữa. Tiếp theo, chạy lệnh

conda create -n test_env_v2

Collecting package metadata [current_repodata.json]: done
Solving environment: done

## Package Plan ##

  environment location: /home/artur/miniconda3/envs/test_env_v2

Proceed [[y]/n]? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate test_env_v2
#
# To deactivate an active environment, use
#
#     $ conda deactivate

conda activate test_env_v2

[test_env_v2] [email protected]:~$

[test_env_v2] [email protected]:~$ conda install pandas=1.2.5 seaborn jupyterlab

[test_env_v2] [email protected]:~$ jupyterlab
1. Điều này sẽ cài đặt phiên bản
conda create -n test_env_v2

Collecting package metadata [current_repodata.json]: done
Solving environment: done

## Package Plan ##

  environment location: /home/artur/miniconda3/envs/test_env_v2

Proceed [[y]/n]? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate test_env_v2
#
# To deactivate an active environment, use
#
#     $ conda deactivate

conda activate test_env_v2

[test_env_v2] [email protected]:~$

[test_env_v2] [email protected]:~$ conda install pandas=1.2.5 seaborn jupyterlab

[test_env_v2] [email protected]:~$ jupyterlab
2 vào tháng 6 năm 2021 và phiên bản mới nhất có sẵn của
conda create -n test_env_v2

Collecting package metadata [current_repodata.json]: done
Solving environment: done

## Package Plan ##

  environment location: /home/artur/miniconda3/envs/test_env_v2

Proceed [[y]/n]? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate test_env_v2
#
# To deactivate an active environment, use
#
#     $ conda deactivate

conda activate test_env_v2

[test_env_v2] [email protected]:~$

[test_env_v2] [email protected]:~$ conda install pandas=1.2.5 seaborn jupyterlab

[test_env_v2] [email protected]:~$ jupyterlab
3 [0.11.2 tính đến tháng 8 năm 2021].

Lưu ý rằng pip thu thập và cài đặt các phụ thuộc của các gói này, chẳng hạn như

conda create -n test_env_v2

Collecting package metadata [current_repodata.json]: done
Solving environment: done

## Package Plan ##

  environment location: /home/artur/miniconda3/envs/test_env_v2

Proceed [[y]/n]? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate test_env_v2
#
# To deactivate an active environment, use
#
#     $ conda deactivate

conda activate test_env_v2

[test_env_v2] [email protected]:~$

[test_env_v2] [email protected]:~$ conda install pandas=1.2.5 seaborn jupyterlab

[test_env_v2] [email protected]:~$ jupyterlab
5 [cần thiết cho
conda create -n test_env_v2

Collecting package metadata [current_repodata.json]: done
Solving environment: done

## Package Plan ##

  environment location: /home/artur/miniconda3/envs/test_env_v2

Proceed [[y]/n]? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate test_env_v2
#
# To deactivate an active environment, use
#
#     $ conda deactivate

conda activate test_env_v2

[test_env_v2] [email protected]:~$

[test_env_v2] [email protected]:~$ conda install pandas=1.2.5 seaborn jupyterlab

[test_env_v2] [email protected]:~$ jupyterlab
2] và
conda create -n test_env_v2

Collecting package metadata [current_repodata.json]: done
Solving environment: done

## Package Plan ##

  environment location: /home/artur/miniconda3/envs/test_env_v2

Proceed [[y]/n]? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate test_env_v2
#
# To deactivate an active environment, use
#
#     $ conda deactivate

conda activate test_env_v2

[test_env_v2] [email protected]:~$

[test_env_v2] [email protected]:~$ conda install pandas=1.2.5 seaborn jupyterlab

[test_env_v2] [email protected]:~$ jupyterlab
7 [cần thiết cho
conda create -n test_env_v2

Collecting package metadata [current_repodata.json]: done
Solving environment: done

## Package Plan ##

  environment location: /home/artur/miniconda3/envs/test_env_v2

Proceed [[y]/n]? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate test_env_v2
#
# To deactivate an active environment, use
#
#     $ conda deactivate

conda activate test_env_v2

[test_env_v2] [email protected]:~$

[test_env_v2] [email protected]:~$ conda install pandas=1.2.5 seaborn jupyterlab

[test_env_v2] [email protected]:~$ jupyterlab
3].

pip install pandas==1.2.5 seaborn

Anaconda

Anaconda cung cấp Trình quản lý gói nguồn mở của riêng mình có tên là conda. Nó rất giống với pip mặc dù nó không phải lúc nào cũng có các gói cập nhật nhất và chậm hơn vừa phải so với pip. Tuy nhiên, conda cho phép chúng tôi cài đặt các gói bên ngoài hệ sinh thái Python. conda cung cấp các kênh khác nhau mà chúng tôi có thể cài đặt các gói. pip có một kho lưu trữ công cộng trung tâm, PYPI, nhưng cũng có thể tạo và lưu trữ kho lưu trữ của riêng bạn.outside the Python ecosystem. conda provides different channels from which we can install packages. pip has one central public repository, PyPi, but it is also possible to create and host your own repository.

Để tạo ra một môi trường ảo với Anaconda, chúng ta có thể sử dụng Navigator GUI Anaconda hoặc dòng lệnh. Hãy bắt đầu với Navigator Anaconda.

  1. Đầu tiên, mở Navigator Anaconda và nhấp vào "Môi trường" ở khung bên trái [1]. Sau đó, nhấp vào
    [test_env_v2] [email protected]:~$ conda config --add channel conda-forge
    
    [test_env_v2] [email protected]:~$ conda install -c conda-forge pandas seaborn
    5 ở dưới cùng [2], viết tên của môi trường của bạn [3], chọn phiên bản Python [hoặc R] và nhấp vào nút Xanh "Tạo" [4]:

  1. Bây giờ, nhấp vào môi trường để kích hoạt nó [5]:

  1. Chúng tôi đã có một số gói được cài đặt trong môi trường, nhưng để cài đặt một số gói khác, chọn "Không được cài đặt" trong menu thả xuống ở trên cùng [6] và tìm kiếm gói có thanh tìm kiếm [7]. Bây giờ chúng tôi phải xác định vị trí gói yêu cầu, chọn nó, nhấp vào "Áp dụng" ở phía dưới [8] và một lần nữa "áp dụng" khi yêu cầu xác nhận của chúng tôi [9]:

Cuối cùng, quay lại trang "Trang chủ", chọn môi trường và chạy ứng dụng cần thiết [ví dụ: Jupyterlab].

Mặc dù sử dụng GUI là thân thiện với người mới bắt đầu so với dòng lệnh, nhưng nó thực sự chậm và phức tạp hơn. Tôi thực sự khuyên bạn nên học các điều cơ bản về dòng lệnh để tăng tốc đáng kể công việc của bạn.

Bây giờ, hãy tạo ra một môi trường ảo với dòng lệnh.

  1. Loại
    [test_env_v2] [email protected]:~$ conda config --add channel conda-forge
    
    [test_env_v2] [email protected]:~$ conda install -c conda-forge pandas seaborn
    6. Điều này sẽ tạo ra một môi trường gọi là
    [test_env_v2] [email protected]:~$ conda config --add channel conda-forge
    
    [test_env_v2] [email protected]:~$ conda install -c conda-forge pandas seaborn
    7. Nó sẽ hỏi bạn nếu bạn muốn tạo một môi trường trong một thư mục, nhập
    [test_env_v2] [email protected]:~$ conda config --add channel conda-forge
    
    [test_env_v2] [email protected]:~$ conda install -c conda-forge pandas seaborn
    8 và nhấn Enter để xác nhận. Lưu ý rằng tôi đang tạo môi trường trong thư mục
    [test_env_v2] [email protected]:~$ conda config --add channel conda-forge
    
    [test_env_v2] [email protected]:~$ conda install -c conda-forge pandas seaborn
    9. Giữ nó trong tâm trí; Tôi sẽ giải thích những gì
    pip install pandas==1.2.5 seaborn
    0 là sau này.
  2. Để kích hoạt môi trường, chạy pip1. Lưu ý rằng tên môi trường xuất hiện trước tên người dùng và máy tính của bạn [pip2, trong trường hợp của tôi].
  3. Bây giờ cài đặt
    conda create -n test_env_v2
    
    Collecting package metadata [current_repodata.json]: done
    Solving environment: done
    
    ## Package Plan ##
    
      environment location: /home/artur/miniconda3/envs/test_env_v2
    
    Proceed [[y]/n]? y
    
    Preparing transaction: done
    Verifying transaction: done
    Executing transaction: done
    #
    # To activate this environment, use
    #
    #     $ conda activate test_env_v2
    #
    # To deactivate an active environment, use
    #
    #     $ conda deactivate
    
    conda activate test_env_v2
    
    [test_env_v2] [email protected]:~$
    
    [test_env_v2] [email protected]:~$ conda install pandas=1.2.5 seaborn jupyterlab
    
    [test_env_v2] [email protected]:~$ jupyterlab
    2,
    conda create -n test_env_v2
    
    Collecting package metadata [current_repodata.json]: done
    Solving environment: done
    
    ## Package Plan ##
    
      environment location: /home/artur/miniconda3/envs/test_env_v2
    
    Proceed [[y]/n]? y
    
    Preparing transaction: done
    Verifying transaction: done
    Executing transaction: done
    #
    # To activate this environment, use
    #
    #     $ conda activate test_env_v2
    #
    # To deactivate an active environment, use
    #
    #     $ conda deactivate
    
    conda activate test_env_v2
    
    [test_env_v2] [email protected]:~$
    
    [test_env_v2] [email protected]:~$ conda install pandas=1.2.5 seaborn jupyterlab
    
    [test_env_v2] [email protected]:~$ jupyterlab
    3 và pip5 bằng cách chạy pip6.
  4. Bây giờ bạn có thể chạy JupyterLab bằng cách chạy lệnh pip5.
conda create -n test_env_v2

Collecting package metadata [current_repodata.json]: done
Solving environment: done

## Package Plan ##

  environment location: /home/artur/miniconda3/envs/test_env_v2

Proceed [[y]/n]? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate test_env_v2
#
# To deactivate an active environment, use
#
#     $ conda deactivate

conda activate test_env_v2

[test_env_v2] [email protected]:~$

[test_env_v2] [email protected]:~$ conda install pandas=1.2.5 seaborn jupyterlab

[test_env_v2] [email protected]:~$ jupyterlab

Lưu ý rằng việc cài đặt với conda mất nhiều thời gian hơn so với pip, nhưng cú pháp có phần giống nhau và đơn giản hơn.

Một lợi thế đáng kể của conda là nó cung cấp nhiều kênh để cài đặt các gói cho các mục đích khác nhau. Kênh gói chính được sử dụng theo mặc định được quản lý bởi Anaconda Inc. và có thể chứa các gói lỗi thời. Mặt khác, kênh conda1 [trang web của họ] được cộng đồng duy trì và thường cung cấp một số lượng lớn các gói cập nhật hơn.

Chạy conda2 để thêm kênh này. Bây giờ, bất cứ khi nào bạn muốn cài đặt các gói từ conda1, chỉ cần thêm tùy chọn conda4 vào conda5 - ví dụ: conda6 cài đặt

conda create -n test_env_v2

Collecting package metadata [current_repodata.json]: done
Solving environment: done

## Package Plan ##

  environment location: /home/artur/miniconda3/envs/test_env_v2

Proceed [[y]/n]? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate test_env_v2
#
# To deactivate an active environment, use
#
#     $ conda deactivate

conda activate test_env_v2

[test_env_v2] [email protected]:~$

[test_env_v2] [email protected]:~$ conda install pandas=1.2.5 seaborn jupyterlab

[test_env_v2] [email protected]:~$ jupyterlab
2 và
conda create -n test_env_v2

Collecting package metadata [current_repodata.json]: done
Solving environment: done

## Package Plan ##

  environment location: /home/artur/miniconda3/envs/test_env_v2

Proceed [[y]/n]? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate test_env_v2
#
# To deactivate an active environment, use
#
#     $ conda deactivate

conda activate test_env_v2

[test_env_v2] [email protected]:~$

[test_env_v2] [email protected]:~$ conda install pandas=1.2.5 seaborn jupyterlab

[test_env_v2] [email protected]:~$ jupyterlab
3 từ kênh conda1.

[test_env_v2] [email protected]:~$ conda config --add channel conda-forge

[test_env_v2] [email protected]:~$ conda install -c conda-forge pandas seaborn

Tất nhiên, có nhiều kênh khác được tạo cho các mục đích khác nhau. Chẳng hạn, tôi là một chuyên gia sinh học và cài đặt nhiều công cụ cho công việc của tôi chỉ có sẵn trên kênh pip0. Một ví dụ khác là kênh pip1 được cung cấp bởi một pytorch khung học máy.

Khi nào nên sử dụng Python hoặc Anaconda?

Nhưng khi nào chúng ta sử dụng pip hoặc conda? Nó phụ thuộc.

PYPI bao gồm hơn 350.000 gói được thiết kế dành riêng cho Python, trong khi Anaconda chỉ cung cấp khoảng 20.000 gói trong số các kênh chính và conda1. Tuy nhiên, các gói Anaconda aren đặc trưng của Python! Đó là, ví dụ, các gói R hoặc thậm chí toàn bộ phân phối phần mềm sử dụng Python, R và Perl đồng thời.

Hơn nữa, Anaconda chủ yếu chứa các gói cho khoa học dữ liệu, trong khi PYPI có thể cài đặt các gói cho bất kỳ trường hợp sử dụng nào [nghĩa là, mạng hoặc xây dựng trang web]. Ngoài ra, Anaconda có GUI thân thiện với người mới bắt đầu.

Vì vậy, bạn có thể đã xác định khi nào nên sử dụng cái này hay cái kia vào thời điểm này. Nếu bạn là người mới bắt đầu trong khoa học dữ liệu, hãy sử dụng Anaconda; Nếu bạn có nhiều kinh nghiệm hơn với dòng lệnh và không thể tìm thấy các gói cho dự án của bạn [có thể nằm ngoài miền khoa học dữ liệu], thì hãy tìm Python tựa pip và PYPI.

Bây giờ, hãy để thảo luận về sự khác biệt giữa Anaconda và Miniconda.

Anaconda so với Miniconda

Miniconda là một phân phối Python khác, nhưng, trái ngược với Anaconda, nó chỉ chứa một vài gói được cài đặt sẵn [thay vì 250+ trong Anaconda]. Tất nhiên, nó cũng kết hợp Trình quản lý gói conda.

Nói cách khác, miniconda là phiên bản nhẹ của Anaconda. Bạn nên sử dụng nó nếu bạn muốn tự cài đặt tất cả các gói cần thiết bằng cách sử dụng dòng lệnh và không muốn lãng phí không gian đĩa cho các gói mà bạn đã giành được sử dụng. Bạn có thể cài đặt nó theo hướng dẫn cho nền tảng của bạn ở đây.

Tuy nhiên, nếu bạn không có kinh nghiệm lắm với dòng lệnh nhưng muốn bắt đầu mã hóa ngay lập tức, hãy chọn Anaconda và giao diện người dùng đồ họa của nó, Anaconda Navigator.

Ba

Hãy nhớ rằng tôi đã nói với bạn rằng Trình quản lý gói conda có phần chậm hơn pip? Vâng, chúng tôi có một sự thay thế tốt hơn để tăng tốc mọi thứ.

Mamba được viết lại miniconda trên C ++, do đó, nó nhanh hơn và sử dụng ít tài nguyên điện toán hơn. Nó sử dụng chính xác cùng một cú pháp: bạn chỉ cần thay đổi conda thành

pip install pandas==1.2.5 seaborn
1 trong các lệnh.

Để cài đặt Mamba Run pip1.

Tôi đã xác định rằng trên máy của mình, với các môi trường đã được thiết lập và hàng tấn gói được lưu trong bộ nhớ cache [cũng như các kênh được thêm vào], conda thực sự nhanh hơn một chút! Tuy nhiên, tôi luôn sử dụng

pip install pandas==1.2.5 seaborn
1 trên phiên bản Amazon EC2 của mình [một máy chủ nhỏ được cung cấp bởi Amazon Web Services] chỉ với một gigabyte của RAM khi quá trình conda bị giết vì nó hết bộ nhớ. Hơn nữa,
pip install pandas==1.2.5 seaborn
1 thực hiện nhanh hơn nhiều trên các máy mới so với conda. Cuối cùng, nó tùy thuộc vào bạn để chọn trình quản lý gói cho dự án của bạn.

Kết luận

Trong bài viết này, tôi đã thảo luận về sự khác biệt giữa Python, Anaconda, Miniconda và Mamba.Hãy để tóm tắt:

  1. Nếu bạn chỉ muốn sử dụng các gói Python cho khoa học dữ liệu và các lĩnh vực khác, hãy sử dụng Trình quản lý gói PythonTHER pip.
  2. Nếu bạn là người mới bắt đầu trong khoa học dữ liệu và muốn bắt đầu tạo các dự án xuất sắc ngay lập tức, hãy sử dụng Anaconda và GUI Anaconda Navigator.
  3. Nếu bạn có thêm kiến thức về dòng lệnh và don don muốn lãng phí không gian lưu trữ, hãy sử dụng
    pip install pandas==1.2.5 seaborn
    0.
  4. Nếu bạn muốn tăng tốc mọi thứ hoặc chạy
    pip install pandas==1.2.5 seaborn
    0 trên máy chậm, hãy sử dụng cho
    pip install pandas==1.2.5 seaborn
    1.

Bây giờ bạn đã biết cách chọn các công cụ bạn cần cho dự án Python của mình.Mã hóa hạnh phúc!

Nếu bạn có bất kỳ câu hỏi hoặc nghi ngờ nào, hãy liên hệ với tôi trên LinkedIn và GitHub.

Bài Viết Liên Quan

Chủ Đề