Hướng dẫn how do i make my first python package? - làm cách nào để tạo gói python đầu tiên của tôi?
Vài tháng trước, tôi quyết định phát hành Caer, một gói tầm nhìn máy tính có sẵn ở Python. Tôi thấy quá trình này là đau đớn dữ dội. Bạn có thể đoán tại sao - tài liệu nhỏ (và khó hiểu), thiếu các hướng dẫn tốt, v.v. Vì vậy, tôi quyết định viết bài viết này với hy vọng rằng nó sẽ giúp những người đang đấu tranh để làm điều này. Chúng tôi sẽ xây dựng một mô -đun rất đơn giản và làm cho nó có sẵn cho bất kỳ ai trên thế giới. Nội dung của mô -đun này theo một cấu trúc rất cơ bản. Tổng cộng, có bốn tệp Python, mỗi tệp có một phương thức duy nhất trong đó. Chúng tôi sẽ giữ điều này thực sự đơn giản cho đến bây giờ. Bạn sẽ nhận thấy rằng tôi có một thư mục gọi là Mang ra __init__sMột cái gì đó mà bạn sẽ luôn tìm thấy trong mỗi gói Python là một tệp 8. Tệp này sẽ cho Python coi các thư mục là các mô-đun (hoặc mô-đun phụ).Rất đơn giản, nó sẽ giữ tên của tất cả các phương thức trong tất cả các tệp Python có trong thư mục ngay lập tức. Một tệp 8 điển hình có định dạng sau:
Khi xây dựng các gói trong Python, bạn được yêu cầu thêm một tệp 8 trong mỗi thư mục phụ trong gói của bạn. Những thư mục phụ này là các mô-đun phụ của gói của bạn.Đối với trường hợp của chúng tôi, chúng tôi sẽ thêm các tệp __init__.py của chúng tôi vào thư mục mô -đun thực tế 2, như thế này:
Và chúng tôi sẽ làm điều tương tự cho thư mục 5, như thế này:
Sau khi thực hiện xong, chúng tôi đã đi được nửa chặng đường! Cách thiết lập setup.pyTrong thư mục 3 (và trong cùng thư mục với mô -đun 2 của chúng tôi), chúng tôi cần thêm một tệp 5. Tệp này là điều cần thiết nếu bạn có ý định xây dựng mô -đun thực tế được đề cập.Lưu ý: Hãy đặt tên cho tệp 5 như bạn muốn. Tệp này không dành riêng cho tệp 8 của chúng tôi.Các lựa chọn tên có thể là 8 và 9, nhưng nó thường thực hành tốt nhất để gắn bó với 5.Tệp 5 sẽ chứa thông tin về gói của bạn, cụ thể là tên của gói, phiên bản, phụ thuộc nền tảng và nhiều hơn nữa.Đối với mục đích của chúng tôi, chúng tôi sẽ không yêu cầu thông tin meta nâng cao, vì vậy mã sau đây sẽ phù hợp với hầu hết các gói bạn xây dựng:
Với điều đó, tất cả những gì chúng ta phải làm tiếp theo là chạy lệnh sau trong cùng thư mục với 3:
Điều này sẽ xây dựng tất cả các gói cần thiết mà Python sẽ yêu cầu. Các lệnh 3 và 4 sẽ tạo phân phối nguồn và một bánh xe mà sau này bạn có thể tải lên PYPI.Pypi - Chúng tôi đến đây!PYPI là kho lưu trữ Python chính thức nơi lưu trữ tất cả các gói Python. Bạn có thể nghĩ về nó như là github cho các gói Python. Để cung cấp gói Python của bạn cho mọi người trên khắp thế giới, bạn sẽ cần phải có một tài khoản với PYPI. Với điều đó, tất cả chúng tôi đã thiết lập để tải lên gói của chúng tôi trên PYPI. Bạn có nhớ phân phối nguồn và bánh xe được xây dựng khi chúng tôi chạy 5 không? Vâng, đó là những gì thực sự sẽ được tải lên PYPI.Nhưng trước khi bạn làm điều đó, bạn cần cài đặt 6 nếu bạn không cài đặt nó. Nó đơn giản như & nbsp; ________ 37.Cách tải gói của bạn lên PYPIGiả sử bạn đã cài đặt 6, tiếp tục và chạy:
Lệnh này sẽ tải lên nội dung của thư mục 9 được tự động tạo khi chúng tôi chạy 5. Bạn sẽ nhận được lời nhắc yêu cầu bạn về tên người dùng và mật khẩu pypi của bạn, vì vậy hãy tiếp tục và nhập các tên gọi đó.Bây giờ, nếu bạn đã làm theo hướng dẫn này đến T, bạn có thể gặp lỗi dọc theo các dòng kho lưu trữ đã tồn tại.repository already exists. Điều này thường là do có một cuộc đụng độ tên giữa tên của gói của bạn và một gói đã tồn tại. Nói cách khác, thay đổi tên của gói của bạn - người khác đã lấy tên đó. Và đó là nó! Để tự hào 1 Cài đặt mô -đun của bạn, hãy kích hoạt thiết bị đầu cuối và chạy:
Xem cách Python cài đặt gọn gàng gói của bạn từ các nhị phân được tạo ra trước đó. Mở vỏ tương tác Python và thử nhập gói của bạn:
Để truy cập các phương thức chia và nhân (hãy nhớ rằng chúng có trong một thư mục có tên là 5?), Chạy:
Nó đơn giản như vậy. Xin chúc mừng! Bạn chỉ cần xây dựng gói Python đầu tiên của mình. Mặc dù rất đơn giản, gói của bạn hiện có sẵn để được tải xuống bởi bất kỳ ai trên thế giới (tất nhiên là họ có Python, tất nhiên). Cái gì tiếp theo?Kiểm tra pypiGói mà chúng tôi đã sử dụng trong hướng dẫn này là một mô -đun cực kỳ đơn giản - các hoạt động toán học cơ bản của phép bổ sung, trừ, nhân và chia. Nó không có ý nghĩa gì khi tải chúng trực tiếp lên PYPI, đặc biệt là lần đầu tiên bạn thử điều này. May mắn cho chúng tôi, có PYPI thử nghiệm, một thể hiện riêng của PYPI nơi bạn có thể thử nghiệm và thử nghiệm trên gói của mình (bạn sẽ cần đăng ký một tài khoản riêng trên nền tảng). Quá trình bạn theo dõi để tải lên để kiểm tra PYPI khá giống nhau với một vài thay đổi nhỏ. 0Để tải xuống các dự án từ thử nghiệm PYPI: 1Thông tin meta nâng caoThông tin meta mà chúng tôi đã sử dụng trong tệp 5 rất cơ bản. Bạn có thể thêm thông tin bổ sung như nhiều người bảo trì (nếu có), email của tác giả, thông tin giấy phép và toàn bộ một loạt các dữ liệu khác.Bài viết này sẽ chứng minh đặc biệt hữu ích nếu bạn có ý định làm như vậy. Nhìn vào các kho lưu trữ khácNhìn vào cách các kho lưu trữ khác đã xây dựng các gói của họ có thể chứng minh là siêu hữu ích cho bạn. Khi xây dựng Caer, tôi sẽ liên tục nhìn vào cách Numpy và Sonnet thiết lập các gói của họ. Tôi sẽ khuyên bạn nên xem các kho lưu trữ của Caer, Numpy, và Tensorflow nếu bạn có kế hoạch xây dựng các gói tiên tiến hơn một chút. Học mã miễn phí. Chương trình giảng dạy nguồn mở của Freecodecamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu |