Gói là cấu trúc thư mục tệp phân cấp xác định một môi trường ứng dụng Python duy nhất bao gồm các mô-đun và gói con và gói con phụ, v.v. Show Xem xét một tệp Pos. py có sẵn trong danh bạ Điện thoại. Tệp này có dòng mã nguồn sau - #!/usr/bin/python def Pots(): print "I'm Pots Phone" Tương tự như vậy, chúng ta có hai tệp khác có các chức năng khác nhau có cùng tên như trên -
Bây giờ, hãy tạo thêm một tệp __init__. py trong thư mục Điện thoại - Để cung cấp tất cả các chức năng của bạn khi bạn đã nhập Điện thoại, bạn cần đặt câu lệnh nhập rõ ràng vào __init__. py như sau - from Pots import Pots from Isdn import Isdn from G3 import G3 Sau khi bạn thêm những dòng này vào __init__. py, bạn có sẵn tất cả các lớp này khi nhập gói Điện thoại #!/usr/bin/python # Now import your Phone Package. import Phone Phone.Pots() Phone.Isdn() Phone.G3() Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau - I'm Pots Phone I'm 3G Phone I'm ISDN Phone Trong ví dụ trên, chúng tôi đã lấy ví dụ về một chức năng duy nhất trong mỗi tệp, nhưng bạn có thể giữ nhiều chức năng trong tệp của mình. Bạn cũng có thể định nghĩa các lớp Python khác nhau trong các tệp đó và sau đó bạn có thể tạo các gói của mình từ các lớp đó File: types-example-1.py import types def check(object): print object, if type(object) is types.IntType: print "INTEGER", if type(object) is types.FloatType: print "FLOAT", if type(object) is types.StringType: print "STRING", if type(object) is types.ClassType: print "CLASS", if type(object) is types.InstanceType: print "INSTANCE", print check(0) check(0.0) check("0") class A: pass class B: pass check(A) check(B) a = A() b = B() check(a) check(b) Chúng tôi tổ chức một số lượng lớn tệp trong các thư mục và thư mục con khác nhau dựa trên một số tiêu chí để chúng tôi có thể tìm và quản lý chúng dễ dàng. Theo cách tương tự, một gói trong Python đưa khái niệm về cách tiếp cận mô-đun lên cấp độ logic tiếp theo. Như bạn đã biết, một mô-đun có thể chứa nhiều đối tượng, chẳng hạn như lớp, hàm, v.v. Một gói có thể chứa một hoặc nhiều mô-đun có liên quan. Về mặt vật lý, một gói thực sự là một thư mục chứa một hoặc nhiều tệp mô-đun Hãy tạo một gói có tên mypackage, sử dụng các bước sau
chào hỏi. py Sao chép
chức năng. py Sao chép
Đó là nó. Chúng tôi đã tạo gói có tên mypackage. Sau đây là cấu trúc thư mục Cấu trúc thư mục góiNhập Mô-đun từ GóiBây giờ, để kiểm tra gói của chúng tôi, hãy điều hướng dấu nhắc lệnh đến thư mục #!/usr/bin/python # Now import your Phone Package. import Phone Phone.Pots() Phone.Isdn() Phone.G3()0 và gọi dấu nhắc Python từ đóD. \MyApp>trăn Nhập mô-đun chức năng từ gói mypackage và gọi hàm power() của nó >>> từ chức năng nhập mypackage>>> chức năng. sức mạnh(3,2) 9 Cũng có thể nhập các chức năng cụ thể từ một mô-đun trong gói >>> từ gói của tôi. hàm nhập sum>>> sum(10,20) 30 >>> trung bình(10,12)< . Traceback (most recent call last): Tệp " NameError. tên 'trung bình' không được xác định __trong đó__. pyThư mục gói chứa một tệp đặc biệt có tên là #!/usr/bin/python # Now import your Phone Package. import Phone Phone.Pots() Phone.Isdn() Phone.G3()1, lưu trữ nội dung của gói. Nó phục vụ hai mục đích
Một tệp #!/usr/bin/python # Now import your Phone Package. import Phone Phone.Pots() Phone.Isdn() Phone.G3()1 trống sẽ cung cấp tất cả các chức năng từ các mô-đun trên khi gói này được nhập. Lưu ý rằng #!/usr/bin/python # Now import your Phone Package. import Phone Phone.Pots() Phone.Isdn() Phone.G3()1 là điều cần thiết để thư mục được Python nhận dạng dưới dạng gói. Bạn có thể tùy chọn xác định các chức năng từ các mô-đun riêng lẻ sẽ được cung cấp Ghi chú Chúng tôi cũng sẽ tạo một tập lệnh Python khác trong thư mục #!/usr/bin/python # Now import your Phone Package. import Phone Phone.Pots() Phone.Isdn() Phone.G3()0 và nhập gói mypackage trong đó. Nó phải ở cùng cấp độ của gói được nhập Tệp #!/usr/bin/python # Now import your Phone Package. import Phone Phone.Pots() Phone.Isdn() Phone.G3()1 thường được để trống. Tuy nhiên, nó cũng có thể được sử dụng để chọn các chức năng cụ thể từ các mô-đun trong thư mục gói và cung cấp chúng để nhập. Sửa đổi #!/usr/bin/python # Now import your Phone Package. import Phone Phone.Pots() Phone.Isdn() Phone.G3()1 như bên dưới __trong đó__. py Sao chép
Giờ đây, các chức năng được chỉ định có thể được nhập trong phiên thông dịch hoặc tập lệnh thực thi khác Tạo 7 trong thư mục #!/usr/bin/python # Now import your Phone Package. import Phone Phone.Pots() Phone.Isdn() Phone.G3()0 để kiểm tra mypackage kiểm tra. py Sao chép
Lưu ý rằng các hàm 9 và 0 được nhập từ gói chứ không phải từ các mô-đun tương ứng của chúng, như đã thực hiện trước đó. Đầu ra của đoạn script trên làD. \MyApp>kiểm tra trăn. pyXin chào thế giới power(3,2). 9 Cài đặt gói trên toàn cầuKhi một gói được tạo, nó có thể được cài đặt để sử dụng trên toàn hệ thống bằng cách chạy tập lệnh thiết lập. Tập lệnh gọi hàm 1 từ mô-đun 2Hãy cài đặt mypackage để sử dụng trên toàn hệ thống bằng cách chạy tập lệnh thiết lập Lưu đoạn mã sau dưới dạng thiết lập. py trong thư mục mẹ #!/usr/bin/python # Now import your Phone Package. import Phone Phone.Pots() Phone.Isdn() Phone.G3()0. Tập lệnh gọi hàm 1 từ mô-đun setuptools. Hàm 1 nhận nhiều đối số khác nhau như tên, phiên bản, tác giả, danh sách phụ thuộc, v.v. Đối số 6 xác định xem gói được cài đặt ở chế độ nén hay chế độ thông thườngThí dụ. thành lập. py Sao chépfrom Pots import Pots from Isdn import Isdn from G3 import G37 Bây giờ hãy thực hiện lệnh sau để cài đặt 7 bằng tiện ích pip. Đảm bảo rằng dấu nhắc lệnh nằm trong thư mục mẹ, trong trường hợp này là from Pots import Pots from Isdn import Isdn from G3 import G39D. \MyApp>pip install mypackage Đang xử lý d. \MyApp Cài đặt các gói đã thu thập. mypack Chạy thiết lập. py cài đặt cho mypack. xong Đã cài đặt thành công mypackage-0. 1 Bây giờ mypackage có sẵn để sử dụng trên toàn hệ thống và có thể được nhập vào bất kỳ tập lệnh hoặc trình thông dịch nào D. \>python>>> nhập mypackage >>>mypackage. trung bình(10,20) 15. 0 >>>gói của tôi. công suất(10,2) 100 Bạn cũng có thể muốn xuất bản gói để sử dụng công khai. PyPI (viết tắt của Python Package Index) là kho lưu trữ các gói Python. Truy cập https. // bao bì. con trăn. org/distributing để biết thêm về quy trình tải gói lên PyPI Các gói trong Python với ví dụ là gì?Gói python là tập hợp các mô-đun . Các mô-đun có liên quan với nhau chủ yếu được đặt trong cùng một gói. Khi một mô-đun từ một gói bên ngoài được yêu cầu trong một chương trình, gói đó có thể được nhập và các mô-đun của nó có thể được đưa vào sử dụng. Bất kỳ tệp Python nào, có tên là thuộc tính tên của mô-đun mà không có.
Các gói được gọi bằng Python là gì?Một gói về cơ bản là một thư mục chứa các tệp Python và một tệp có tên __init__. py . Điều này có nghĩa là mọi thư mục bên trong đường dẫn Python chứa tệp có tên __init__. py, sẽ được Python coi là một gói.
Gói Python nào là tốt nhất?10 thư viện Python hàng đầu cho khoa học dữ liệu . TenorFlow NumPy khoa học viễn tưởng gấu trúc Matplotlib máy ảnh SciKit-Tìm hiểu PyTorch Các gói Python được sử dụng nhiều nhất là gì?10 thư viện Python hàng đầu. . TenorFlow Scikit-Tìm hiểu Nặng nề máy ảnh PyTorch ánh sángGBM khoa học viễn tưởng |