Cách nhập mô-đun do người dùng xác định trong python

Trong Python, một mô-đun là một tệp độc lập với các câu lệnh và định nghĩa Python. Ví dụ,

Hello World
1, có thể được coi là một mô-đun có tên
Hello World
2. Điều này khác với gói ở chỗ gói là tập hợp các mô-đun trong các thư mục cung cấp cấu trúc và phân cấp cho các mô-đun

Các mô-đun giúp chúng tôi chia các chương trình lớn thành các tệp nhỏ dễ quản lý hơn. Với các mô-đun, khả năng sử dụng lại mã trở thành hiện thực. Giả sử chúng ta có một chức năng thường được sử dụng trong các chương trình khác nhau. Chúng ta có thể định nghĩa chức năng này trong một mô-đun sau đó nhập nó vào các chương trình khác nhau mà không phải sao chép mã của nó mỗi lần

Trong bài viết này, chúng ta sẽ xem cách tạo các mô-đun Python và cách sử dụng chúng trong mã Python

Mô-đun viết

Một mô-đun chỉ đơn giản là một tệp Python có phần mở rộng

Hello World
3. Tên của tệp trở thành tên mô-đun. Bên trong tệp, chúng ta có thể có các định nghĩa và cài đặt của các lớp, biến hoặc hàm. Những thứ này sau đó có thể được sử dụng trong các chương trình Python khác

Hãy để chúng tôi bắt đầu bằng cách tạo một chức năng chỉ cần in "Xin chào thế giới". Để thực hiện việc này, hãy tạo một tệp Python mới và lưu nó dưới dạng

Hello World
4. Thêm đoạn mã sau vào tập tin

def my_function():
    print("Hello World")

Nếu bạn chạy đoạn mã trên, nó sẽ không trả lại gì. Điều này là do chúng tôi đã không yêu cầu chương trình làm bất cứ điều gì. Đúng là chúng tôi đã tạo một hàm có tên là

Hello World
5 trong mã, nhưng chúng tôi chưa gọi hoặc gọi hàm đó. Khi được gọi, chức năng này sẽ in văn bản "Xin chào thế giới"

Bây giờ, di chuyển đến cùng thư mục mà bạn đã lưu tệp ở trên và tạo một tệp mới có tên là

Hello World
6. Thêm đoạn mã sau vào tập tin

import hello

hello.my_function()

đầu ra

Hello World

Chức năng đã được gọi thành công. Chúng tôi bắt đầu bằng cách nhập mô-đun. Tên của tệp là

Hello World
4, do đó tên của mô-đun đã nhập là
Hello World
8

Ngoài ra, hãy lưu ý cú pháp mà chúng tôi đã sử dụng để gọi hàm. Đây được gọi là "ký hiệu dấu chấm", cho phép chúng ta gọi hàm bằng cách chỉ định tên mô-đun trước, sau đó là tên của hàm

Tuy nhiên, đó chỉ là một cách để nhập mô-đun và gọi hàm. Chúng tôi có thể đã làm nó như sau

from hello import my_function

my_function()

đầu ra

Hello World

Trong ví dụ trên, dòng đầu tiên ra lệnh cho trình thông dịch Python nhập một hàm có tên là

Hello World
9 từ một mô-đun có tên là
Hello World
8. Trong trường hợp như vậy, bạn không cần phải sử dụng ký hiệu dấu chấm để truy cập chức năng, bạn chỉ cần gọi trực tiếp

Tuy nhiên, trong trường hợp mô-đun

Hello World
8 của chúng ta có nhiều chức năng, câu lệnh
from hello import my_function

my_function()
2 sẽ không nhập tất cả các chức năng của
Hello World
8 vào chương trình của chúng ta, mà chỉ nhập
Hello World
9. Nếu bạn cố gắng truy cập bất kỳ chức năng nào khác, sẽ xảy ra lỗi. Bạn phải nhập toàn bộ mô-đun hoặc nhập từng chức năng riêng lẻ để sử dụng chúng

Chúng ta có thể định nghĩa một biến trong một mô-đun, biến này sau đó có thể được sử dụng bởi các mô-đun khác. Để chứng minh điều này, hãy mở tệp

Hello World
4 và thêm đoạn mã sau vào tệp

Bây giờ, hãy mở tệp

Hello World
6 và sửa đổi nó như sau

import hello

hello.my_function()

print(hello.name)

đầu ra

Hello World
Nicholas

Chúng tôi đã gọi thành công cả hàm và biến được xác định trong mô-đun vì chúng tôi đã nhập toàn bộ mô-đun thay vì chỉ hàm

Hello World
5

Chúng tôi đã nói trước đó rằng chúng tôi có thể định nghĩa một lớp trong một mô-đun. Hãy xem cách thực hiện điều này trong ví dụ tiếp theo. Mở tệp

Hello World
4 và sửa đổi nó như sau

Ở đây chúng ta đã định nghĩa một lớp có tên là

from hello import my_function

my_function()
9. Hai biến đã được định nghĩa trong lớp này,
Hello World
0 và
Hello World
1. Phương thức
Hello World
2 cũng đã được xác định trong phần này, phương thức này sẽ in thông tin chi tiết về sinh viên ra bảng điều khiển

Bây giờ, hãy mở tệp

Hello World
6 và sửa đổi nó như sau

import hello

hello.my_function()

print(hello.name)

nicholas = hello.Student("Nicholas", "Computer Science")
nicholas.get_student_details()

đầu ra

Hãy xem hướng dẫn thực hành, thực tế của chúng tôi để học Git, với các phương pháp hay nhất, tiêu chuẩn được ngành chấp nhận và bao gồm bảng gian lận. Dừng các lệnh Git trên Google và thực sự tìm hiểu nó

Hello World
Nicholas
Your name is Nicholas.
You are studying Computer Science

Trong đoạn script trên, chúng ta lại sử dụng ký hiệu dấu chấm để tạo một đối tượng của lớp

Hello World
4 từ mô-đun
Hello World
8. Sau đó, chúng tôi đã sử dụng hàm
Hello World
2 để lấy thông tin chi tiết về sinh viên

Mặc dù các mô-đun chủ yếu bao gồm các định nghĩa lớp (trong hầu hết các trường hợp), chúng cũng có thể thực sự chạy mã của chính chúng khi được nhập. Để chứng minh điều này, chúng ta hãy sửa đổi tệp

Hello World
4, nơi chúng ta có định nghĩa về hàm
Hello World
5, cùng với lệnh gọi hàm

def my_function():
    print("Hello World")
    
my_function()

Bây giờ, hãy mở tệp

Hello World
6 và xóa tất cả các dòng ngoại trừ dòng sau

import hello

hello.my_function()
0

đầu ra

Hello World

Đầu ra ở trên cho thấy rằng chúng ta đã định nghĩa và gọi hàm trong mô-đun. Khi mô-đun được nhập, nó sẽ trả về kết quả trực tiếp từ hàm mà không cần phải gọi hàm. Hành vi này không phải lúc nào cũng mong muốn, nhưng nó hữu ích cho một số trường hợp sử dụng nhất định, chẳng hạn như tải trước dữ liệu từ bộ đệm khi mô-đun được nhập

Nhập tất cả các đối tượng mô-đun

Để nhập tất cả các đối tượng (hàm, biến, lớp, v.v. ) từ một mô-đun, chúng ta có thể sử dụng câu lệnh

import hello

hello.my_function()

print(hello.name)
0. Ví dụ: để nhập tất cả các đối tượng có trong mô-đun
Hello World
8, chúng ta có thể sử dụng câu lệnh sau

import hello

hello.my_function()
2

Sau khi thêm câu lệnh trên vào chương trình, chúng ta sẽ có thể sử dụng bất kỳ hàm, biến hoặc lớp nào có trong mô-đun

Hello World
8 mà không cần phải thêm tiền tố vào nó bằng ________

Truy cập một mô-đun từ một đường dẫn khác

Trong Python, các mô-đun được sử dụng trong nhiều dự án. Do đó, sẽ vô nghĩa nếu bạn giữ các mô-đun của mình trong thư mục của một trong các dự án, vì các dự án khác sẽ không thể sử dụng nó một cách dễ dàng.

Bạn có một số tùy chọn bất cứ khi nào bạn cần truy cập vào một mô-đun không được lưu trữ trong cùng thư mục với chương trình của bạn. Hãy để chúng tôi thảo luận về những điều này trong vài phần tiếp theo

đường dẫn nối thêm

Để nhập mô-đun từ một đường dẫn khác, trước tiên bạn cần nhập mô-đun

import hello

hello.my_function()

print(hello.name)
4 cũng như bất kỳ mô-đun Python nào khác mà bạn muốn sử dụng trong chương trình của mình

Mô-đun

import hello

hello.my_function()

print(hello.name)
4 được cung cấp bởi Thư viện chuẩn Python và nó cung cấp các chức năng và tham số dành riêng cho hệ thống. Hàm
import hello

hello.my_function()

print(hello.name)
6 từ mô-đun
import hello

hello.my_function()

print(hello.name)
4 có thể được sử dụng để thêm đường dẫn của mô-đun vào dự án hiện tại

Để chứng minh điều này, hãy cắt tệp

Hello World
4 khỏi thư mục mà bạn có tệp
Hello World
6. Dán nó vào một thư mục khác. Trong trường hợp của tôi, tôi đã dán nó vào thư mục "F. \Trăn. "

Bây giờ, hãy mở tệp

Hello World
6, nhập mô-đun
import hello

hello.my_function()

print(hello.name)
4 và chỉ định đường dẫn mà trình thông dịch Python sẽ tìm tệp. Điều này được thể hiện dưới đây

import hello

hello.my_function()
3

đầu ra

Hello World

Trong đoạn mã trên, dòng

Hello World
Nicholas
2 yêu cầu trình thông dịch Python đưa đường dẫn này vào danh sách các đường dẫn sẽ được tìm kiếm trong khi nhập mô-đun

Thêm một Mô-đun vào Đường dẫn Python

Phương pháp trên chỉ hoạt động nếu bạn nhập mô-đun

import hello

hello.my_function()

print(hello.name)
4. Nếu bạn không nhập mô-đun
import hello

hello.my_function()

print(hello.name)
4 và chỉ định đường dẫn đến mô-đun, lỗi sẽ được tạo. Để cung cấp mô-đun cho toàn bộ hệ thống, bạn có thể thêm mô-đun đó vào đường dẫn mà Python thường kiểm tra các mô-đun và gói. Bằng cách này, bạn sẽ không phải nhập mô-đun
import hello

hello.my_function()

print(hello.name)
4 và chỉ định đường dẫn đến mô-đun như chúng tôi đã thực hiện trong phần trước

Trước khi làm bất cứ điều gì khác, trước tiên bạn nên xác định đường dẫn mà Python tìm kiếm các mô-đun và gói. Chỉ cần mở dòng lệnh của hệ điều hành của bạn và chạy lệnh

Hello World
Nicholas
6. Điều này sẽ đưa bạn đến thiết bị đầu cuối Python

Nhập mô-đun

import hello

hello.my_function()

print(hello.name)
4 như sau

import hello

hello.my_function()
5

Sau đó, bạn có thể chạy lệnh sau để in ra đường dẫn

import hello

hello.my_function()
6

Đầu ra sẽ chứa ít nhất một đường dẫn hệ thống. Nếu bạn làm điều đó từ môi trường lập trình, bạn sẽ nhận được một số đường dẫn. Trong trường hợp của tôi, tôi đã nhận được như sau

import hello

hello.my_function()
7

Mục tiêu của bạn là tìm một cái trong môi trường mà bạn hiện đang sử dụng. Bạn nên tìm kiếm một cái gì đó như sau

import hello

hello.my_function()
8

Di chuyển tệp

Hello World
4 của bạn đến đường dẫn. Sau đó, bạn sẽ có thể nhập mô-đun
Hello World
8 từ bất kỳ thư mục nào theo cách thông thường, như hình bên dưới

import hello

hello.my_function()
0

đầu ra

Hello World

Phần kết luận

Điều này đánh dấu sự kết thúc của bài viết này. Một mô-đun chỉ đơn giản là một tệp Python với một tập hợp các biến và định nghĩa hàm. Một mô-đun tạo điều kiện cho khả năng sử dụng lại mã vì bạn có thể xác định một hàm trong một mô-đun và gọi nó từ các chương trình khác nhau thay vì phải xác định hàm trong mọi chương trình. Mặc dù một mô-đun chủ yếu được sử dụng cho các định nghĩa hàm và lớp, nhưng nó cũng có thể xuất các biến và thể hiện của lớp

Bạn có thể nhập mô-đun bằng Python theo cách thủ công không?

Hàm append() . Đây là cách dễ nhất để nhập mô-đun Python bằng cách thêm đường dẫn mô-đun vào biến đường dẫn. Biến đường dẫn chứa các thư mục Trình thông dịch Python tìm kiếm các mô-đun đã được nhập trong tệp nguồn.

Làm cách nào để nhập mô-đun từ gói Python?

Nhập mô-đun từ một gói . ) using the dot (.) toán tử . Bây giờ, nếu mô-đun này chứa một hàm có tên select_difficulty() , chúng ta phải sử dụng tên đầy đủ để tham chiếu nó.

Mô-đun do người dùng định nghĩa trong Python là gì?

Mô-đun là thứ cho phép bạn sử dụng lại mã đã viết trên các tập lệnh . Một mô-đun thường chứa các tập hợp hàm do người dùng định nghĩa mà sau đó bạn có thể sử dụng như các lệnh Python thông thường.