Hướng dẫn what is package in python with example? - ví dụ về gói trong python là gì?

Gói Python

Trong bài viết này, bạn sẽ học cách chia cơ sở mã của mình thành các mô -đun sạch, hiệu quả bằng các gói Python. Ngoài ra, bạn sẽ học cách nhập và sử dụng các gói bên thứ ba hoặc của riêng bạn trong chương trình Python.

Video: Gói Python: Tổ chức mã của bạn

Gói là gì?

Chúng tôi thường không lưu trữ tất cả các tệp của chúng tôi trên máy tính của chúng tôi ở cùng một vị trí. Chúng tôi sử dụng một hệ thống phân cấp các thư mục được tổ chức tốt để truy cập dễ dàng hơn.

Các tệp tương tự được lưu trong cùng một thư mục, ví dụ, chúng tôi có thể giữ tất cả các bài hát trong thư mục "Âm nhạc". Tương tự như điều này, Python có các gói cho các thư mục và mô -đun cho các tệp.music" directory. Analogous to this, Python has packages for directories and modules for files.

Khi chương trình ứng dụng của chúng tôi phát triển kích thước lớn hơn với rất nhiều mô -đun, chúng tôi đặt các mô -đun tương tự trong một gói và các mô -đun khác nhau trong các gói khác nhau. Điều này làm cho một dự án (chương trình) dễ dàng quản lý và rõ ràng về mặt khái niệm.

Tương tự, vì một thư mục có thể chứa các thư mục con và tệp, gói Python có thể có các gói và mô-đun phụ.

Một thư mục phải chứa một tệp có tên

Game.Level.start.select_difficulty(2)
0 để Python coi nó là một gói. Tệp này có thể bị bỏ trống nhưng chúng tôi thường đặt mã khởi tạo cho gói đó trong tệp này.

Đây là một ví dụ. Giả sử chúng ta đang phát triển một trò chơi. Một tổ chức có thể của các gói và mô -đun có thể được thể hiện trong hình dưới đây.

Hướng dẫn what is package in python with example? - ví dụ về gói trong python là gì?
Cấu trúc mô -đun gói trong lập trình Python

Nhập mô -đun từ một gói

Chúng ta có thể nhập các mô -đun từ các gói bằng toán tử DOT (.).

Ví dụ: nếu chúng tôi muốn nhập mô -đun

Game.Level.start.select_difficulty(2)
1 trong ví dụ trên, nó có thể được thực hiện như sau:

import Game.Level.start

Bây giờ, nếu mô -đun này chứa một hàm có tên

Game.Level.start.select_difficulty(2)
2, chúng ta phải sử dụng tên đầy đủ để tham khảo nó.

Game.Level.start.select_difficulty(2)

Nếu cấu trúc này có vẻ dài, chúng ta có thể nhập mô -đun mà không có tiền tố gói như sau:

from Game.Level import start

Bây giờ chúng ta có thể gọi chức năng đơn giản như sau:

start.select_difficulty(2)

Một cách khác để nhập chỉ hàm (hoặc lớp hoặc biến) bắt buộc từ một mô -đun trong gói sẽ như sau:

from Game.Level.start import select_difficulty

Bây giờ chúng ta có thể gọi trực tiếp chức năng này.

select_difficulty(2)

Mặc dù dễ dàng hơn, phương pháp này không được khuyến khích. Sử dụng toàn bộ không gian tên tránh sự nhầm lẫn và ngăn hai tên nhận dạng giống nhau va chạm.

Trong khi nhập các gói, Python nhìn vào danh sách các thư mục được xác định trong

Game.Level.start.select_difficulty(2)
3, tương tự như đối với đường dẫn tìm kiếm mô -đun.

Chúng tôi thường tổ chức các tệp của mình 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 có thể được quản lý dễ dàng và hiệu quả. Ví dụ: chúng tôi giữ tất cả các trò chơi của mình trong một thư mục trò chơi và chúng tôi thậm chí có thể phân loại theo thể loại của trò chơi hoặc một cái gì đó như thế này. Tương tự tương tự được theo sau là gói Python. & NBSP;

Một mô -đun Python có thể chứa một số lớp, hàm, biến, v.v. trong khi gói Python có thể chứa một số mô -đun. Nói một cách đơn giản hơn, gói là thư mục chứa các mô -đun khác nhau dưới dạng tệp.

Tạo gói

Hãy để tạo ra một gói có tên MyPCKG sẽ chứa hai mô -đun Mod1 và Mod2. Để tạo mô -đun này, hãy làm theo các bước dưới đây - & NBSP;

  • Tạo một thư mục có tên MyPCKG.
  • Bên trong thư mục này tạo một tệp python trống, tức là __init__.py
  • Sau đó tạo hai mô -đun Mod1 và Mod2 trong thư mục này.

Mod1.py

Python3

Game.Level.start.select_difficulty(2)
4
Game.Level.start.select_difficulty(2)
5

Game.Level.start.select_difficulty(2)
6
Game.Level.start.select_difficulty(2)
7
Game.Level.start.select_difficulty(2)
8
Game.Level.start.select_difficulty(2)
9
from Game.Level import start
0

Mod2.py 

Python3

Game.Level.start.select_difficulty(2)
4
from Game.Level import start
22

Game.Level.start.select_difficulty(2)
6
from Game.Level import start
5
from Game.Level import start
6
from Game.Level import start
7
from Game.Level import start
8

Phân cấp của gói của chúng tôi trông như thế này - & nbsp;

mypckg
|
|
---__init__.py
|
|
---mod1.py
|
|
---mod2.py

Hiểu __init__.py

__init__.py giúp trình thông dịch Python nhận ra thư mục là gói. Nó cũng chỉ định các tài nguyên được nhập từ các mô -đun. Nếu __init__.py trống, điều này có nghĩa là tất cả các chức năng của các mô -đun sẽ được nhập. Chúng tôi cũng có thể chỉ định các chức năng từ mỗi mô -đun sẽ có sẵn.

Ví dụ: chúng ta cũng có thể tạo tệp __init__.py cho mô -đun trên là - & nbsp;

__init__.py

Python3

from Game.Level import start
9
start.select_difficulty(2)
0
start.select_difficulty(2)
1
start.select_difficulty(2)
2

from Game.Level import start
9
start.select_difficulty(2)
4
start.select_difficulty(2)
1
from Game.Level import start
2

__Init__.py này sẽ chỉ cho phép các hàm GFG và SUM từ các mô -đun Mod1 và Mod2 được nhập.

Nhập các mô -đun từ một gói

Chúng ta có thể nhập các mô -đun này bằng cách sử dụng câu lệnh từ nhập từ và toán tử DOT (.) & NBSP;

Syntax:

import package_name.module_name

Ví dụ: Nhập mô -đun từ gói

Chúng tôi sẽ nhập các mô -đun từ gói được tạo ở trên và sẽ sử dụng các chức năng bên trong các mô -đun đó.

Python3

from Game.Level import start
9
start.select_difficulty(2)
8
start.select_difficulty(2)
1
from Game.Level.start import select_difficulty
0

from Game.Level import start
9
start.select_difficulty(2)
8
start.select_difficulty(2)
1
from Game.Level.start import select_difficulty
4

from Game.Level.start import select_difficulty
5

from Game.Level.start import select_difficulty
6
from Game.Level.start import select_difficulty
7
from Game.Level.start import select_difficulty
8______22222

Game.Level.start.select_difficulty(2)
7
select_difficulty(2)
6

Output:

Welcome to GFG
3

Chúng tôi cũng có thể nhập chức năng cụ thể cũng sử dụng cùng một cú pháp.

Ví dụ: Nhập chức năng cụ thể từ mô -đun

Python3

from Game.Level import start
9
select_difficulty(2)
8
start.select_difficulty(2)
1
start.select_difficulty(2)
2

from Game.Level import start
9
mypckg
|
|
---__init__.py
|
|
---mod1.py
|
|
---mod2.py
2
start.select_difficulty(2)
1
from Game.Level import start
2

mypckg
|
|
---__init__.py
|
|
---mod1.py
|
|
---mod2.py
5

from Game.Level.start import select_difficulty
6
from Game.Level.start import select_difficulty
7
from Game.Level import start
2
Game.Level.start.select_difficulty(2)
8
select_difficulty(2)
1
select_difficulty(2)
22.

Game.Level.start.select_difficulty(2)
7
select_difficulty(2)
6

Output:

Welcome to GFG
3

Những gì được gọi là gói trong Python?

Một gói Python thường bao gồm một số mô -đun.Về mặt vật lý, một gói là một thư mục chứa các mô -đun và có thể các thư mục khác có thể chứa nhiều thư mục và mô -đun hơn.Về mặt khái niệm, đó là một không gian tên.usually consists of several modules. Physically, a package is a folder containing modules and maybe other folders that themselves may contain more folders and modules. Conceptually, it's a namespace.

Việc sử dụng gói Python là gì?

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.helps in a well-organized hierarchy of data set, making the directories and modules easy to access.

Các loại gói trong Python là gì?

Dưới đây là một số gói Python quan trọng nhất của 2021:..
NumPy..
pandas..
Matplotlib..
Seaborn..
scikit-learn..
Requests..
urllib3..

Gói và thư viện trong Python là gì?

04:41 Gói là một tập hợp các mô -đun liên quan nhằm đạt được một mục tiêu chung.Cuối cùng, Thư viện tiêu chuẩn Python là một tập hợp các gói và mô-đun có thể được sử dụng để truy cập vào chức năng tích hợp.Trong một thế giới lý tưởng, bạn sẽ nhập bất kỳ mô -đun cần thiết nào vào các tập lệnh Python của bạn mà không có bất kỳ vấn đề nào.Packages are a collection of related modules that aim to achieve a common goal. Finally, the Python standard library is a collection of packages and modules that can be used to access built-in functionality. In an ideal world, you'd import any necessary modules into your Python scripts without any issues.