Bạn có thể đóng gói python không?

Nếu bạn đóng gói một gói Python để xuất bản, hãy làm thế nào để bạn chắc chắn rằng tất cả các thành viên phụ thuộc cần phải được bao gồm? . py là trái tim và trung tâm của các dự án Python được cài đặt với PIP. Nói một cách đơn giản, thiết lập. py is a build file sample was a parsing with Python Setuptools Python.  

Nội dung chính Hiển thị

  • Cập nhật các công cụ Python
  • Thành lập. py ví dụ & nbsp;
  • Ví dụ Install_Requires
  • Sự phụ thuộc không được tìm thấy trong pypi  
  • Bao bì Python cho Windows và Mac
  • Active platform
  • Kết luận. Tương lai của & nbsp;
  • Làm thế nào để tôi bao gồm các phụ thuộc vào dự án Python?
  • Làm thế nào để đóng gói Python?
  • Làm cách nào để kiểm tra xem một phụ thuộc có được cài đặt trong Python không?
  • Các công cụ quản lý phụ thuộc lẫn nhau trong Python là gì?
  • Gói trò chơi phụ thuộc Python là gì?
  • Làm thế nào để Python xử lý các gói phụ thuộc?

Setuptools là một thư viện quy trình phát triển gói và tiện ích để xây dựng các dự án Python dựa trên các gói và các thành viên phụ thuộc của chúng được liệt kê trong thiết lập tệp lệnh. py. Một tệp Python chỉ dựa trên thư viện tiêu chuẩn có thể được phân phối lại và tái sử dụng mà không cần sử dụng setuptools. Nhưng đối với các dự án bao gồm nhiều tệp, cần thêm thư viện hoặc cần một phiên bản công cụ có thể của Python, Setuptools sẽ được yêu cầu.  

Cập nhật các công cụ Python

Bước đầu tiên là một hành động tốt nhất. chắc chắn rằng các công cụ của bạn đã được cập nhật

$ python -m pip install --upgrade pip setuptools

Thành lập. py ví dụ & nbsp;

Lệnh sau đây là một ví dụ về cách tạo tập lệnh thiết lập. py for your project. Câu nêu ra thông tin bạn cần cung cấp, bao gồm

  • Tên dự án - Nhập tên cho dự án của bạn trong báo giá
  • Các gói để bao gồm trong phân phối - đối số mặc định Find_Packages (',)find_packages(',') đối số mặc định sẽ . py và được đặt trong thư mục cục bộ nơi thiết lập. py đã được cài đặt
  • Số phiên bản dự án - Nhập số phiên bản cho dự án trong báo giá
  • Liệt kê giấy phép cho dự án - Nhập tên của giấy phép bạn đang cấp phép cho dự án của mình để sử dụng theo trích dẫn
  • Mô tả ngắn về thư viện của bạn - Nhập mô tả ngắn gọn về dự án của bạn trong trích dẫn
  • Mô tả dài về thư viện của bạn - Nhập mô tả chi tiết hơn về dự án của bạn trong văn bản hoặc sử dụng Markdown
  • Tên của bạn - Nhập tên của bạn trong đoạn trích dẫn để biểu thị ai là tác giả
  • Địa chỉ email của bạn - Tùy chọn cung cấp địa chỉ email trong báo giá mà người dùng có thể liên hệ với bạn
  • Liên kết đến kho lưu trữ hoặc trang web GitHub của bạn - Tùy chọn cung cấp một liên kết đến dự án repo của bạn
  • Tải xuống liên kết từ nơi dự án có thể được tải xuống - cung cấp một URL cho mã nguồn dự án của bạn trong báo giá
  • Danh sách các từ khóa - Cung cấp danh sách các từ khóa trong các dấu trích dẫn được liên kết với dự án của bạn để giúp việc tìm kiếm dễ dàng hơn
  • Danh sách dự án phụ thuộc - Cung cấp danh sách tất cả các dự án phụ thuộc mà dự án của bạn yêu cầu trong khung hình vuông. Cách dễ nhất để cung cấp điều này là sao chép và dán từ phần install_requires (xem bên dưới). Phần install_requires (xem bên dưới).
  • https. //pypi. org/ classifiers - Cung cấp một danh sách tất cả các phân loại ứng dụng cho dự án của bạn trong một dấu phân loại. Bạn có thể tìm thấy một danh sách đầy đủ các loại phân loại tại https. //pypi. org/ phân loạihttps. //pypi. tổ chức/phân loại
from distutils.core import setup
from setuptools import find_packages
import os

# Optional project description in README.md:
current_directory = os.path.dirname(os.path.abspath(__file__))

try:
    with open(os.path.join(current_directory, 'README.md'), encoding='utf-8') as f:
        long_description = f.read()
except Exception:
    long_description = ''
setup(

# Project name: 
name='',

# Packages to include in the distribution: 
packages=find_packages(','),

# Project version number:
version='',

# List a license for the project, eg. MIT License
license='',

# Short description of your library: 
description='',

# Long description of your library: 
long_description=long_description,
long_description_content_type='text/markdown',

# Your name: 
author='',

# Your email address:
author_email='',

# Link to your github repository or website: 
url='',

# Download Link from where the project can be downloaded from:
download_url='',

# List of keywords: 
keywords=[],

# List project dependencies: 
install_requires=[],

# https://pypi.org/classifiers/ 
classifiers=[]
)

Ví dụ Install_Requires

install_requires là một phần trong thiết lập tệp. py mà bạn phải nhập danh sách các phụ thuộc tối thiểu cần thiết cho một dự án để chạy chính xác. Khi pip run setup. py, nó sẽ cài đặt tất cả các thuộc tính được liệt kê trong install_requires. là một phần trong thiết lập. py mà bạn cần nhập danh sách các phụ thuộc tối thiểu cần thiết để dự án chạy chính xác. Khi pip chạy thiết lập. py, nó sẽ cài đặt tất cả các phụ thuộc được liệt kê trong install_requires.

Ví dụ. nếu dự án của bạn bao gồm matplotlib, bạn sẽ cần phải liệt kê bảng kê của nó, cũng như sự phụ thuộc của nó trong numpy trong install_requires như được hiển thị bên dưới

setup(
...
install_requires=[
'<matplotlib>',
'<numpy>'
] 
...)

Example of Install_requires with Platform Specific Dependencies 

Bạn có thể sửa đổi install_requires bằng cách thêm vào nền tảng cụ thể và công cụ có thể phiên bản & nbsp; . Chẳng hạn, nếu ví dụ trước đây của chúng tôi bao gồm matplotlib v3. 2. 1 và numpy v1. 17. 4 trên Python 3. 6. 6 Đối với Linux, tôi có thể chỉ định. install_requires bằng cách thêm các thành phần phụ thuộc theo nền tảng và theo phiên bản cụ thể, tùy thuộc vào môi trường mà dự án sẽ được cài đặt trên đó. Chẳng hạn, nếu ví dụ trước của chúng tôi bao gồm matplotlib v3. 2. 1 và numpy v1. 17. 4 trên Python 3. 6. 6 cho Linux, chúng tôi có thể chỉ định.

setup(
...
install_requires=[
"<matplotlib>;python_version<'<3.6.6>'",
"<numpy> >= <1.17.4>;platform_system=='<Linux>'"

 ...)

To install a file setup. py bao gồm các thuộc tính được liệt kê trong install_inwires

$ python setup.py install 

Khi lệnh được chạy, tất cả các phụ thuộc chưa được cài đặt sẽ được tải xuống, xây dựng (nếu cần) và được cài đặt. Bất kỳ tập lệnh nào yêu cầu các phụ thuộc cụ thể trong thời gian chạy sẽ được cài đặt với trình bao bọc chắc chắn các phiên bản chính được thêm vào sys. Path (đường dẫn hệ thống). sys. đường dẫn (đường dẫn hệ thống).

Sự phụ thuộc không được tìm thấy trong pypi  

Nếu dự án của bạn có yêu cầu thuộc tính phụ thuộc không nằm trong Chỉ số gói Python (PYPI), bạn vẫn có thể bao gồm chúng nếu chúng có thể truy cập được qua HTTP và được đóng gói dưới định dạng tệp trứng, tệp. py hoặc VCS (kiểm soát phiên bản Hệ thống) Kho lưu trữ, chẳng hạn như Git hoặc Subversion

Để tải xuống các phần phụ thuộc không tìm thấy trong PYPI, bạn cần thêm URL vào phần phụ thuộc_links trong Thiết lập () trong thiết lập tệp. py. Giả sử rằng các phụ thuộc được đóng gói chính xác, chúng sẽ được cài đặt tự động

setup( 
.. 
dependency_links=['http://github.com/<username>/<reponame>/tarball/master#egg=<packagename>-<version#>']
...

Để kiểm tra sự phụ thuộc không tìm thấy trong PYPI, hãy thay thế - bằng _ trong tên gói và phiên bản # trong các đối số phụ thuộc_links

dependency_links=['http://github.com/<username>/<reponame>/tarball/master#egg=<packagename>_<version#>']

Bao bì Python cho Windows và Mac

Trong một số trường hợp, nó có thể muốn phân phối lại mã Python của bạn như

setting setting

Mặc dù có một số công cụ khác nhau mà bạn có thể sử dụng để tạo trình cài đặt, nhưng chúng tôi thường yêu cầu

Thay vào đó, hãy xem xét sử dụng nền tảng ActiveSestate, sẽ tự động đóng gói phân phối Python của bạn để phát triển trên Windows (MSI), MAC (PKG) và Linux (TAR), mà không cần thiết . Tạo một tài khoản miễn phí để bắt đầu ngay hôm nay. Tạo tài khoản miễn phí để bắt đầu ngay hôm nay.

có thể thực thi được

Nếu bạn thích gói mã Python của mình như một Windows có thể thực thi, có một số công cụ bạn có thể sử dụng, bao gồm Py2Exe và CX_Freeze. Để biết thêm thông tin, hãy tham khảo bài đăng trên blog của chúng tôi cách chuyển đổi. Py sang. exeCách chuyển đổi. py đến. exe


Active platform

Nền tảng ActiveState là một tự động hóa bản dựng dựa trên đám mây và & nbsp; . Nó cung cấp  

Bạn có thể đóng gói python không?

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 xung đột phụ thuộc mà còn cung cấp cách giải quyết xung đột xung đột phụ thuộc. &NBSP;

Chỉ cần tuân theo lời nhắc hướng dẫn sẽ giải quyết xung đột, loại bỏ & nbsp;

Bạn có thể thử nền tảng ActiveState miễn phí của & nbsp; .   . Hoặc bắt đầu bằng cách chỉ cần nhập & nbsp của bạn; . txt 

Kết luận. Tương lai của & nbsp;

Nếu bạn giống như hầu hết các nhà phát triển & nbsp; . Bằng cách áp dụng nền tảng ActiveState, bạn có thể

  • Tăng tính bảo mật của  
  • Cải thiện tính minh bạch của   của bạn;
  • Loại bỏ địa ngục phụ thuộc
  • Tắt "các tác vụ trên máy của tôi" các vấn đề

Cuối cùng, các nhà phát triển có sẵn áp dụng nền tảng ActiveState cho & NBSP; . mã hóa

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, công cụ trạng thái

các cửa sổ

powershell -Command "& $([scriptblock]::Create((New-Object Net.WebClient).DownloadString('https://platform.activestate.com/dl/cli/install.ps1'))) -activate-default ActiveState-Labs/Python-3.9Beta"

Linux

________số 8

Bây giờ bạn có thể chạy   .  

đầu đọc tiêu đề

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

Cách quản lý Python phụ thuộc với môi trường ảo

Làm thế nào để tôi bao gồm các phụ thuộc vào dự án Python?

Nếu dự án của bạn có yêu cầu thuộc tính phụ thuộc không nằm trong Chỉ số gói Python (PYPI), bạn vẫn có thể bao gồm chúng nếu chúng có thể truy cập được qua HTTP và được đóng gói dưới định dạng tệp trứng, tệp. py hoặc VCS (kiểm soát phiên bản Hệ thống) Kho lưu trữ, chẳng hạn như Git hoặc Subversion

Làm thế nào để đóng gói Python?

Bao bì Python cơ bản yêu cầu tối thiểu của thiết lập tệp. py trong bản gốc của dự án mà sau đó bạn có thể gọi trên thiết lập python. py sdist. thành lập. ý chính. CMDClass là một phần mở rộng cho setuptools và là lớp sẽ đóng gói mã để phân phối nhưng cũng thu thập tất cả các gói từ các yêu cầu. txt vào kho lưu trữ

Làm cách nào để kiểm tra xem một phụ thuộc có được cài đặt trong Python không?

Lệnh kiểm tra PIP - Kiểm tra các phụ thuộc Python Sau khi cài đặt vì PIP không giải quyết được các vấn đề phụ thuộc vào quá trình cài đặt, tùy chọn lệnh Kiểm tra PIP có thể được sử dụng để xác minh rằng các phụ thuộc đã được cài đặt

Các công cụ quản lý phụ thuộc lẫn nhau trong Python là gì?

Có nhiều công cụ và phương pháp quản lý phụ thuộc lẫn nhau để quản lý và bổ sung các phụ thuộc vào dự án Python, từ PIP đến Conda đến nền tảng Activeestate. Tại đây, một bản tóm tắt của một số công cụ quản lý biến phụ thuộc phổ biến nhất. PIP là công cụ tiêu chuẩn thực tế để cài đặt các gói Python và quản lý các thuộc tính của chúng

Gói trò chơi phụ thuộc Python là gì?

Sự kiện phụ thuộc là tất cả các thành phần phần mềm theo yêu cầu của dự án của bạn để nó hoạt động như dự kiến ​​và tránh các lỗi thời gian chạy. Bạn có thể tin tưởng vào PYPI (Chỉ số gói Python) để cung cấp các gói có thể giúp bạn bắt đầu mọi thứ từ thao tác dữ liệu đến học máy đến phát triển web, v. v. tất cả các thành phần phần mềm mà dự án của bạn yêu cầu để dự án hoạt động như dự định và tránh lỗi thời gian chạy . Bạn có thể tin tưởng vào PyPI (Chỉ mục gói Python) để cung cấp các gói có thể giúp bạn bắt đầu mọi thứ, từ thao tác dữ liệu đến học máy đến phát triển web, v.v.

Làm thế nào để Python xử lý các gói phụ thuộc?

Sử dụng VETV và PipENV là hai phương pháp quản lý các phụ thuộc trong Python. Chúng đơn giản để thực hiện và, đối với hầu hết người dùng, các giải pháp đầy đủ để xử lý nhiều dự án với những người phụ thuộc khác nhau. Tuy nhiên, chúng không phải là giải pháp duy nhất. Các dịch vụ khác có thể bổ sung cho việc sử dụng của họ