Hướng dẫn how do you create a user defined package in python? - làm cách nào để bạn tạo một gói do người dùng xác định trong python?

Xem thảo luận

Cải thiện bài viết

Lưu bài viết

  • Đọc
  • Bàn luận
  • Xem thảo luận

    Cải thiện bài viết

    Lưu bài viết


    Đọc

    Bàn luận

    Các gói là một cách cấu trúc nhiều gói và mô-đun giúp trong một hệ thống phân cấp dữ liệu được tổ chức tốt, giúp các thư mục và mô-đun dễ dàng truy cập. Giống như có các ổ đĩa và thư mục khác nhau trong hệ điều hành để giúp chúng tôi lưu trữ các tệp, các gói tương tự giúp chúng tôi lưu trữ các gói và mô-đun phụ khác, do đó người dùng có thể sử dụng khi cần thiết.
    To create a package in Python, we need to follow these three simple steps:

    1. Tạo và khám phá các gói
    2. Để nói với Python rằng một thư mục cụ thể là một gói, chúng tôi tạo một tệp có tên __init__.py bên trong nó và sau đó nó được coi là một gói và chúng tôi có thể tạo các mô-đun và gói phụ khác trong đó. Tệp __init__.py này có thể bị bỏ trống hoặc có thể được mã hóa với mã khởi tạo cho gói. Để tạo một gói trong Python, chúng ta cần làm theo ba bước đơn giản sau:
    3. Đầu tiên, chúng tôi tạo một thư mục và đặt cho nó một tên gói, tốt nhất là liên quan đến hoạt động của nó.

    Sau đó, chúng tôi đặt các lớp học và các chức năng cần thiết trong đó.

    Cuối cùng, chúng tôi tạo một tệp __init__.py bên trong thư mục, để cho Python biết rằng thư mục là một gói.

    1. Ví dụ về việc tạo gói
    2. Hãy cùng xem xét ví dụ này và xem cách tạo gói. Hãy để tạo ra một gói có tên ô tô và xây dựng ba mô -đun trong đó là BMW, Audi và Nissan.. To do this we need to create a file with the name Bmw.py and create its content by putting this code into it.

      Đầu tiên chúng tôi tạo ra một thư mục và đặt tên cho nó xe.

      Sau đó, chúng ta cần tạo các mô -đun. Để làm điều này, chúng tôi cần tạo một tệp có tên BMW.Py và tạo nội dung của nó bằng cách đặt mã này vào đó.

      class Bmw:

          ____10

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      1
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      4
      a8.get_buy(1)
      3
      a8.get_buy(1)
      4
      a8.get_buy(1)
      5
      a8.get_buy(1)
      6

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      4
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      6
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      7

          ____10

      from Cars.Audi import a8
      9
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      4
      a8.get_buy(1)
      8
      a8.get_buy(1)
      9
      from Cars.Audi.a8 import get_buy
      0
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2
      from Cars.Audi.a8 import get_buy
      2

      from Cars.Audi.a8 import get_buy
      3
      a8.get_buy(1)
      3
      a8.get_buy(1)
      4
      from Cars.Audi.a8 import get_buy
      6
      from Cars.Audi.a8 import get_buy
      7
      from Cars.Audi.a8 import get_buy
      8

      Sau đó, chúng ta cần tạo các mô -đun. Để làm điều này, chúng tôi cần tạo một tệp có tên BMW.Py và tạo nội dung của nó bằng cách đặt mã này vào đó.

      class Bmw:

          ____10

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      1
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      4
      a8.get_buy(1)
      3
      a8.get_buy(1)
      4class7
      a8.get_buy(1)
      6

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      4
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      6
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      7

          ____10

      from Cars.Audi import a8
      9
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      4
      a8.get_buy(1)
      8
      a8.get_buy(1)
      9
      from Cars.Audi.a8 import get_buy
      0
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2
      from Cars.Audi.a8 import get_buy
      2

      from Cars.Audi.a8 import get_buy
      3
      a8.get_buy(1)
      3
      a8.get_buy(1)
      4
      from Cars.Audi.a8 import get_buy
      6
      from Cars.Audi.a8 import get_buy
      7
      from Cars.Audi.a8 import get_buy
      8

      Sau đó, chúng ta cần tạo các mô -đun. Để làm điều này, chúng tôi cần tạo một tệp có tên BMW.Py và tạo nội dung của nó bằng cách đặt mã này vào đó.

      class Bmw:

          ____10

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      1
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      4
      a8.get_buy(1)
      3
      a8.get_buy(1)
      4
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      19
      a8.get_buy(1)
      6

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      4
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      6
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      7

          ____10

      from Cars.Audi import a8
      9
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2

    3. import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      4
      a8.get_buy(1)
      8
      a8.get_buy(1)
      9
      from Cars.Audi.a8 import get_buy
      0
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2
      from Cars.Audi.a8 import get_buy
      2
      This file will be placed inside Cars directory and can be left blank or we can put this initialisation code into it.

      from Cars.Audi.a8 import get_buy
      3
      a8.get_buy(1)
      3
      a8.get_buy(1)
      4
      from Cars.Audi.a8 import get_buy
      6
      from Cars.Audi.a8 import get_buy
      7
      from Cars.Audi.a8 import get_buy
      8

      Sau đó, chúng tôi tạo một tệp khác với tên Audi.py và thêm loại mã tương tự vào nó với các thành viên khác nhau.

      class

      get_buy(1)
      0

    4. import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      4
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      6
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      7

      Sau đó, chúng tôi tạo một tệp khác với tên Nissan.py và thêm loại mã tương tự vào nó với các thành viên khác nhau.

      class     2

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      4
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      2
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      6
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      7

      Cuối cùng, chúng tôi tạo tệp __init__.py. Tệp này sẽ được đặt bên trong thư mục ô tô và có thể để trống hoặc chúng tôi có thể đặt mã khởi tạo này vào đó.

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      60

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      33
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      34
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      35
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      36

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      64

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      33
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      38
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      35
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      40

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      68

      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      33
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      42
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      35
      import Cars.Audi.a8
      Cars.Audi.a8.get_buy(1)
      
      44

      Bây giờ, hãy để sử dụng gói mà chúng tôi đã tạo. Để thực hiện việc này, hãy tạo tệp mẫu.py trong cùng một thư mục nơi đặt gói xe hơi và thêm mã sau vào nó:

      Hướng dẫn how do you create a user defined package in python? - làm cách nào để bạn tạo một gói do người dùng xác định trong python?

      1. import Cars.Audi.a8
        Cars.Audi.a8.get_buy(1)
        
        33
        import Cars.Audi.a8
        Cars.Audi.a8.get_buy(1)
        
        46
        import Cars.Audi.a8
        Cars.Audi.a8.get_buy(1)
        
        35
        import Cars.Audi.a8
        Cars.Audi.a8.get_buy(1)
        
        36

        Suppose the cars and the brand directories are packages. For them to be a package they all must contain __init__.py file in them, either blank or with some initialization code. Let’s assume that all the models of the cars to be modules. Use of packages helps importing any modules, individually or whole.
        Suppose we want to get Bmw i8. The syntax for that would be:
        'import' Cars.Bmw.x5 

        import Cars.Audi.a8
        Cars.Audi.a8.get_buy(1)
        
        33
        import Cars.Audi.a8
        Cars.Audi.a8.get_buy(1)
        
        46
        import Cars.Audi.a8
        Cars.Audi.a8.get_buy(1)
        
        35
        import Cars.Audi.a8
        Cars.Audi.a8.get_buy(1)
        
        40
        If any module contains a function and we want to import that. For e.g., a8 has a function get_buy(1) and we want to import that, the syntax would be:

        import Cars.Audi.a8
        Cars.Audi.a8.get_buy(1)
        

        Mặc dù chỉ sử dụng cú pháp nhập, người ta phải nhớ rằng thuộc tính cuối cùng phải là thanh toán con hoặc mô -đun, nó không phải là bất kỳ chức năng hoặc tên lớp nào.

      2. Từ Nhập khẩu, trong các gói, bất cứ khi nào chúng tôi yêu cầu sử dụng chức năng đó, chúng tôi sẽ cần viết toàn bộ dòng dài sau khi nhập gói cha mẹ. Để vượt qua điều này theo cách đơn giản hơn, chúng tôi sử dụng từ khóa từ từ khóa. Đối với điều này, trước tiên, chúng tôi cần đưa vào mô -đun bằng cách sử dụng ‘từ và’ Nhập khẩu: ________ 2
        Now, whenever we require using such function we would need to write the whole long line after importing the parent package. To get through this in a simpler way we use ‘from’ keyword. For this we first need to bring in the module using ‘from’ and ‘import’:
        from Cars.Audi import a8

        Bây giờ chúng ta có thể gọi chức năng ở bất cứ đâu bằng cách sử dụng

        a8.get_buy(1)

        Ngoài ra còn có một cách khác mà ít dài hơn. Chúng tôi có thể trực tiếp nhập chức năng và sử dụng nó bất cứ khi nào cần thiết. Đầu tiên nhập nó bằng cách sử dụng:

        from Cars.Audi.a8 import get_buy

        Bây giờ hãy gọi chức năng từ bất cứ đâu:

        get_buy(1)
      3. Từ Nhập khẩu *, trong các gói trong khi sử dụng cú pháp từ Nhập khẩu, chúng ta có thể nhập bất cứ thứ gì từ các mô hình con đến lớp hoặc chức năng hoặc biến, được xác định trong cùng một mô -đun. Nếu thuộc tính được đề cập trong phần nhập không được xác định trong gói thì trình biên dịch sẽ ném một ngoại lệ nhập khẩu. Việc mô hình phụ có thể gây ra các tác dụng phụ không mong muốn xảy ra trong khi nhập các mô-đun phụ một cách rõ ràng. Do đó, chúng tôi có thể nhập các mô -đun khác nhau tại một thời điểm bằng cách sử dụng cú pháp *. Cú pháp là: ________ 6
        While using the from…import syntax, we can import anything from submodules to class or function or variable, defined in the same module. If the mentioned attribute in the import part is not defined in the package then the compiler throws an ImportError exception.
        Importing sub-modules might cause unwanted side-effects that happens while importing sub-modules explicitly. Thus we can import various modules at a single time using * syntax. The syntax is:
        from Cars.Chevrolet import *

        Điều này sẽ nhập mọi thứ, tức là, các mô-đun, mô-đun phụ, chức năng, lớp học, từ gói phụ.

      Bài viết này được đóng góp bởi Chinmoy Lenka. Nếu bạn thích GeekSforGeeks và muốn đóng góp, bạn cũng có thể viết một bài viết bằng cách sử dụng PROPTENT.GeekSforGeeks.org hoặc gửi bài viết của bạn đến. Xem bài viết của bạn xuất hiện trên trang chính của GeekSforGeek và giúp các chuyên viên máy tính khác.Chinmoy Lenka. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to . See your article appearing on the GeeksforGeeks main page and help other Geeks.

      Vui lòng viết nhận xét nếu bạn tìm thấy bất cứ điều gì không chính xác, hoặc bạn muốn chia sẻ thêm thông tin về chủ đề được thảo luận ở trên.


    Làm thế nào để bạn tạo một thư viện do người dùng xác định trong Python?

    Làm thế nào để tạo một thư viện Python..
    Bước 1: Tạo một thư mục mà bạn muốn đặt thư viện của mình. ....
    Bước 2: Tạo môi trường ảo cho thư mục của bạn. ....
    Bước 3: Tạo cấu trúc thư mục. ....
    Bước 4: Tạo nội dung cho thư viện của bạn. ....
    Bước 5: Xây dựng thư viện của bạn ..

    Làm thế nào để bạn tạo một gói trong Python?

    Python - Gói..
    Tạo một thư mục mới có tên D: \ MyApp ..
    Bên trong MyApp, tạo một thư mục con với tên 'MyPackage' ..
    Tạo tệp __init__.py trống trong thư mục MyPackage ..
    Sử dụng trình chỉnh sửa nhận biết Python như IDLE, hãy tạo các mô-đun Greet.py và Function.Py với mã sau:.

    Làm thế nào để bạn tạo một mô -đun do người dùng xác định?

    Để tạo một mô -đun, chỉ cần lưu mã bạn muốn trong một tệp với phần mở rộng tệp .Py:..
    Lưu mã này trong một tệp có tên mymodule.py.....
    Nhập mô -đun có tên myModule và gọi hàm lời chào: ....
    Lưu mã này trong tệp mymodule.py.....
    Nhập mô -đun có tên MyModule và truy cập từ điển Person1:.

    __ init __ py trong gói python là gì?

    Các tệp __init__.py được yêu cầu để làm cho các thư mục xử lý Python chứa tệp dưới dạng các gói.Điều này ngăn các thư mục có tên chung, chẳng hạn như chuỗi, vô tình ẩn các mô -đun hợp lệ xảy ra sau đó trên đường dẫn tìm kiếm mô -đun.required to make Python treat directories containing the file as packages. This prevents directories with a common name, such as string , unintentionally hiding valid modules that occur later on the module search path.