Hướng dẫn dùng pip mean python
Một số kinh nghiệm làm việc với PIP – trình quản lý module/package của Python. Hy vọng nó sẽ hữu ích cho các bạn đang học lập trình Python. Show Pip là một trình quản lý gói (Module/Package) cho Python. Nó là một công cụ cho phép bạn cài đặt và quản lý các thư viện và dependency (phụ thuộc) mà không được phân phối như một phần của thư viện chuẩn của Python. Trong bài viết là hướng dẫn sử dụng pip3, với pip (Cho Python 3) các lệnh tương tự chỉ cần thay pip3 = pip Một số kinh nghiệm làm việc với PIP – trình quản lý module/package của Python. Hy vọng nó sẽ hữu ích cho các bạn đang học lập trình Python. Pip là một trình quản lý gói (Module/Package) cho Python. Nó là một công cụ cho phép bạn cài đặt và quản lý các thư viện và dependency (phụ thuộc) mà không được phân phối như một phần của thư viện chuẩn của Python. Trong bài viết là hướng dẫn sử dụng pip3, với pip (Cho Python 3) các lệnh tương tự chỉ cần thay pip3 = pip Mục lục bài viết:
Trong hướng dẫn này, bạn sẽ tìm hiểu về:
Như bạn sẽ thấy, cộng đồng Python rất tích cực và đã tạo ra một số lựa chọn thay thế cho Bắt đầu với pipVậy, pip là gì? Quản lý gói rất quan trọng và Khái niệm về trình quản lý gói có thể quen thuộc với bạn nếu bạn đến từ các ngôn ngữ khác. JavaScript sử dụng npm để
quản lý gói, Ruby sử dụng gem và .NET sử dụng NuGet. Trong Python, Trình cài đặt Python đã cài đặt
Bạn sẽ thấy một kết quả tương tự hiển thị phiên bản Cài đặt các gói với pipPython được coi là một ngôn ngữ bao gồm pin. Điều này có nghĩa là thư viện chuẩn Python bao gồm một tập hợp các gói và mô-đun mở rộng để trợ giúp các nhà phát triển với các tập lệnh và ứng dụng của họ. Đồng thời, Python có một cộng đồng rất tích cực đóng góp một tập hợp các gói thậm chí còn lớn hơn có thể giúp bạn đáp ứng nhu cầu phát triển của mình. Các gói này được xuất bản lên Chỉ mục gói Python, còn được gọi là PyPI (phát âm là Pie Pea Eye). PyPI lưu trữ một bộ sưu tập mở rộng các gói bao gồm các framework phát triển, công cụ và thư viện. Nhiều gói trong số này đơn giản hóa việc phát triển Python bằng cách
cung cấp các giao diện thân thiện cho chức năng đã tồn tại trong thư viện chuẩn. Ví dụ: bạn có thể viết một tập lệnh truy xuất nội dung của một trang web chỉ bằng cách sử dụng các thư viện tiêu chuẩn được bao gồm trong Python:
Trong tập lệnh này, bạn import Từ phản hồi, bạn có thể truy xuất tiêu đề cgi.parse_header() trả về một bộ giá trị chính và một từ điển các tham số. Ví dụ: tiêu đề Bộ tuple sẽ chứa chuỗi
Khi bạn có mã hóa của trang, bạn có thể đọc phản hồi và giải mã nó thành văn bản. Bạn có thể chạy ví dụ trong bảng điều khiển để xem nó hoạt động như thế
nào:
Điều này có vẻ như rất nhiều công việc đối với một tập lệnh nhỏ để truy xuất nội dung của một trang web. May mắn thay, có một gói Python giúp đơn giản hóa các yêu cầu HTTP và cung cấp một giao diện đẹp để thực hiện chính xác những gì bạn muốn. Cài đặt gói cơ bảnPyPI lưu trữ một thư viện rất phổ biến để thực hiện các yêu cầu HTTP được gọi requests. Bạn có thể tìm hiểu tất cả về requests trong trang web tài liệu chính thức. Bước đầu tiên là cài đặt gói
Như bạn có thể thấy,
Bạn sẽ thấy một đầu ra tương tự như ở trên. Bạn sử dụng Bạn cũng có thể thấy rằng môi trường hiện tại đang sử dụng
Lưu ý rằng bạn sử dụng Khi bạn chạy Bây giờ bạn đã cài đặt
Như bạn có thể thấy, Lệnh Như bạn có thể thấy, nhiều gói đã được cài đặt. Bạn có thể xem siêu dữ liệu gói bằng cách sử dụng lệnh
Danh mục siêu dữ liệu Với gói
Bạn có thể import gói Như bạn có thể thấy, Bạn không phải xử lý mã hóa của trang vì Sử dụng các tệp yêu cầuLệnh Bạn muốn tạo đặc điểm kỹ thuật của các phụ thuộc và phiên bản bạn đã sử dụng để phát triển và thử nghiệm ứng dụng của mình, vì vậy không có gì ngạc nhiên khi bạn sử dụng ứng dụng trong môi trường production. Các tệp yêu cầu cho phép bạn chỉ định chính xác gói và phiên bản nào nên được cài đặt. Việc chạy
Lệnh Khi bạn muốn sao chép môi trường trong một hệ thống khác, bạn có thể chạy
Các phiên bản của gói sẽ khớp với những phiên bản được liệt kê trong
Bạn có thể gửi tệp Tinh chỉnh các yêu cầuMở tệp
Bạn có thể thay đổi toán tử logic thành
Không có gì được nâng cấp bởi vì bạn có phiên bản mới nhất, nhưng nếu một phiên bản mới được xuất bản cho một gói được liệt kê, thì gói đó sẽ được nâng cấp. Trong một thế giới lý tưởng, các phiên bản mới của gói sẽ tương thích ngược và sẽ không bao giờ có lỗi mới. Thật không may, các phiên bản mới có thể giới thiệu những thay đổi sẽ phá vỡ ứng dụng của bạn. Cú pháp tệp yêu cầu hỗ trợ thông số phiên bản bổ sung để tinh chỉnh các yêu cầu của bạn. Giả sử rằng một phiên bản mới
Việc thay đổi thông số phiên bản cho gói Các phụ thuộc của bản production và developmentKhông phải tất cả các gói mà bạn cài đặt trong quá trình phát triển các ứng dụng của mình sẽ là các gói phụ thuộc vào ứng dụng. Có nhiều gói được xuất bản lên PyPI là các công cụ hoặc thư viện phát triển mà bạn muốn tận dụng trong quá trình phát triển. Ví dụ: bạn có thể muốn kiểm thử đơn vị ứng dụng của mình, vậy bạn cần một framework unit test. Framework phổ biến cho unit test là pytest. Bạn muốn cài đặt nó trong môi trường development nhưng bạn không muốn nó trong môi trường production vì nó không phụ thuộc vào ứng dụng. Bạn tạo tệp yêu cầu thứ hai (
Điều này yêu cầu bạn sử dụng
Lưu ý rằng bạn đang sử dụng cùng một Đóng băng các yêu cầu đối với bản productionBạn đã tạo các tệp yêu cầu cho bản production và development và thêm chúng vào kiểm soát nguồn. Các tệp sử dụng các chỉ định phiên bản linh hoạt để đảm bảo rằng bạn tận dụng các bản sửa lỗi được xuất bản bởi các phần phụ thuộc của bạn. Bạn cũng đang thử nghiệm ứng dụng của mình và sẵn sàng triển khai nó vào thực tế. Bạn có thể muốn đảm bảo rằng các phiên bản của các phụ thuộc bạn triển khai cho sản xuất là phiên bản chính xác mà bạn đã sử dụng trong quy trình tích hợp hoặc quy trình xây dựng của mình vì bạn biết tất cả các thử nghiệm đều vượt qua và ứng dụng hoạt động. Các chỉ định phiên bản hiện tại không đảm bảo rằng các phiên bản tương tự sẽ được triển khai cho phiên bản production, vì vậy bạn muốn đóng băng các yêu cầu production như đã thấy trước đó. Bạn tạo một môi trường ảo production sạch và cài đặt các yêu cầu sản xuất bằng cách sử dụng file Tìm các gói để sử dụngKhi bạn đã có kinh
nghiệm hơn với Python thì bạn sẽ có một tập hợp các gói mà bạn sẽ biết và bạn sẽ sử dụng trong hầu hết các ứng dụng của mình. Các gói Mặc dù vậy, sẽ có lúc bạn cần giải quyết một vấn đề khác và bạn sẽ muốn tìm kiếm một công cụ hoặc thư viện khác có thể giúp bạn giải quyết vấn đề đó. Như bạn có thể thấy ở
trên, Hãy xem lệnh này có thể giúp chúng ta như thế nào:
Lệnh có một tập hợp các tùy chọn được liệt kê ở trên và a
Giả sử ứng dụng của bạn cần truy cập vào một dịch vụ đang sử dụng OAuth2 để được cấp quyền. Lý tưởng nhất là có một thư viện hoạt động với
Cụm từ tìm kiếm mang lại một bộ sưu tập các gói khá phong phú. Một số trong số chúng có vẻ cụ thể cho một dịch vụ hoặc công nghệ như Hầu hết thời gian, bạn muốn tìm kiếm các gói trực tiếp trong trang web PyPI. PyPI cung cấp khả năng tìm kiếm cho chỉ mục của nó và cách lọc kết quả theo siêu dữ liệu được hiển thị trong gói, như framework, topic, development status, v.v. Tìm kiếm các cụm từ giống nhau trong PyPI mang lại nhiều kết quả, nhưng bạn có thể lọc chúng theo các danh mục khác nhau. Ví dụ: bạn có thể mở rộng Intended Audience và chọn Developers vì bạn muốn có một thư viện giúp bạn phát triển ứng dụng của mình. Ngoài ra, bạn có thể muốn một gói ổn định và production-ready. Bạn có thể mở rộng danh mục Development Status và chọn Production/Stable: Bạn có thể áp dụng các bộ lọc bổ sung và điều chỉnh các cụm từ tìm kiếm cho đến khi bạn tìm thấy gói mà bạn đang tìm kiếm. Kết quả cung cấp một liên kết đến trang gói,
trang này chứa nhiều thông tin hơn và hy vọng là một số tài liệu. Hãy cùng xem thông tin về Trang dự án cung cấp thêm thông tin, và nó dường như có một liên kết đến trang chủ của dự án. Liên kết đưa bạn đến kho dự án trên GitHub. Ở đó, bạn có thể xem thêm một số thông tin về dự án và một số ví dụ sử dụng. Việc tìm kiếm kho mã nguồn ban đầu có thể là một nguồn tài nguyên vô giá. Ở đó, bạn có thể tìm thấy một số gợi ý về trạng thái của dự án bằng cách xem ngày của các commit mới nhất, số lượng các pull request và các vấn đề mở, v.v. Một tùy chọn khác để tìm một gói là sử dụng trang tìm kiếm Google. Các thư viện Python được sử dụng rộng rãi sẽ hiển thị ở đầu các tìm kiếm của google và bạn sẽ có thể tìm thấy liên kết đến gói trong PyPI hoặc kho mã nguồn của nó. Việc tìm kiếm gói phù hợp có thể mất một chút thời gian và nghiên cứu, nhưng nó cũng sẽ đẩy nhanh quá trình phát triển của bạn khi bạn tìm thấy nó. Gỡ cài đặt góiĐôi khi, bạn sẽ phải gỡ cài đặt một gói nào đó. Bạn đã tìm thấy một thư viện tốt hơn để thay thế nó, hoặc nó là thứ bạn không thực sự cần. Gỡ cài đặt các gói có thể hơi phức tạp. Lưu ý rằng khi bạn cài đặt Trước khi bạn gỡ cài đặt một gói thì bạn nên chạy lệnh
Lưu ý hai trường cuối cùng Bạn nên chạy lệnh
Gỡ cài đặt một gói sẽ hiển thị cho bạn các tệp sẽ bị xóa và sẽ yêu cầu xác
nhận. Nếu bạn chắc chắn muốn xóa gói vì bạn đã kiểm tra các phần phụ thuộc của nó và biết rằng không có gì khác đang sử dụng nó, bạn có thể truyền
Bạn có thể chỉ định tất cả các gói mà bạn muốn gỡ bỏ cài đặt trong một lời gọi duy nhất: Bạn cũng có thể gỡ cài đặt tất cả các gói được liệt kê trong tệp yêu cầu bằng cách cung cấp tùy chọn
Hãy nhớ luôn kiểm tra các gói phụ thuộc mà bạn muốn gỡ cài đặt. Bạn có thể muốn gỡ cài đặt tất cả các phần phụ thuộc của nó, nhưng gỡ cài đặt một gói đang được người khác sử dụng sẽ phá vỡ ứng dụng của bạn. Các lựa chọn thay thế cho pip
Trong phần này, bạn sẽ tìm hiểu về các công cụ quản lý gói khác có sẵn cho Python. CondaConda là một trình quản lý gói, phụ thuộc và môi trường cho nhiều ngôn ngữ bao gồm cả Python. Trên thực tế, nguồn gốc của nó đến từ Anaconda, khởi đầu là một gói khoa học dữ liệu cho Python. Conda được sử dụng rộng rãi cho các ứng dụng khoa học dữ liệu và máy học, đồng thời sử dụng chỉ mục riêng của mình để lưu trữ các gói tương thích. Conda không chỉ cho phép bạn quản lý các gói phụ thuộc mà còn quản lý môi trường ảo cho các ứng dụng của bạn, cài đặt các bản phân phối Python tương thích và đóng gói ứng dụng của bạn để triển khai bản production. Thiết lập Python cho Máy học trên Windows là phần giới thiệu tuyệt vời về Conda khám phá quản lý gói và môi trường. Thông tin duy nhất về Windows cụ thể là về cài đặt, vì vậy nó vẫn có liên quan nếu bạn sử dụng nền tảng hệ điều hành khác. PipenvPipenv là một công cụ quản lý gói khác “nhằm mục đích mang lại những gì tốt nhất cho tất cả các thế giới đóng gói” cho Python. Nó thu hút được nhiều sự chú ý trong cộng đồng Python vì nó hợp nhất môi trường ảo và quản lý gói trong một công cụ duy nhất. Nó cũng giải quyết một số trục trặc phổ biến nhất mà bạn sẽ gặp phải khi quản lý thủ công các phụ thuộc thông qua Pipenv: Hướng dẫn về Công cụ đóng gói Python mới là một khởi đầu tuyệt vời để tìm hiểu về Pipenv và cách tiếp cận của nó để quản lý gói. PoetryPoetry đang được rất nhiều người quan tâm. Giống như Pipenv, nó đơn giản hóa việc quản lý phiên bản gói và tách biệt các phần phụ thuộc development và production, và nó hoạt động bằng cách cô lập các phần phụ thuộc đó vào một môi trường ảo. Nếu bạn biết về JavaScript và npm, thì bạn sẽ thấy Poetry khá quen thuộc. Nó vượt ra ngoài quản lý gói, giúp bạn xây dựng các bản phân phối cho các ứng dụng và thư viện của mình và triển khai chúng lên PyPI. Cách xuất bản Gói Python nguồn mở lên PyPI có phần giới thiệu hay về Poetry và có thể giúp bạn bắt đầu dễ dàng. Kết luận: pip là gì?Hướng dẫn này đã trả lời câu hỏi, pip là gì? Bạn đã thấy Python cung cấp một thư viện tiêu chuẩn mở rộng phù hợp để phát triển tất cả các loại ứng dụng, nhưng cộng đồng Python đang hoạt động cung cấp một bộ công cụ và thư viện lớn hơn nữa để tăng tốc độ phát triển ứng dụng Python. Các công cụ và thư viện này được xuất bản lên Chỉ mục gói Python (PyPI) và Trong hướng dẫn này, bạn đã học về:
Ngoài ra, bạn đã học về tầm quan
trọng của việc cập nhật các phần phụ thuộc và các lựa chọn thay thế Vui lòng liên hệ trong phần nhận xét bên dưới nếu bạn có bất kỳ câu hỏi nào và bạn luôn có thể nhận thêm thông tin tại trang tài liệu pip. |