Mục lục

Không có mục lục
Tham gia kênh Telegram của CloudFly để nhận thêm ưu đãi và không bỏ lỡ bất kỳ khuyến mãi nào từ CloudFly

Cách nhập mô-đun trong Python 3

Ngày đăng: 26 tháng 6 năm 2023

Giới thiệu

Ngôn ngữ lập trình Python đi kèm với nhiều chức năng tích hợp sẵn. Trong số này có một số chức năng phổ biến, bao gồm:

  • print() in biểu thức ra
  • abs() trả về giá trị tuyệt đối của một số
  • int() chuyển đổi kiểu dữ liệu khác thành số nguyên
  • len() trả về độ dài của một chuỗi hoặc bộ sưu tập

Tuy nhiên, các chức năng tích hợp sẵn này bị hạn chế và chúng ta có thể sử dụng các mô-đun để tạo các chương trình phức tạp hơn.

Các mô-đun là các tệp Python .py bao gồm mã Python. Bất kỳ tệp Python nào cũng có thể được tham chiếu dưới dạng mô-đun. Một tệp Python có tên hello.py có tên mô-đun là hello có thể được nhập vào các tệp Python khác hoặc được sử dụng trên trình thông dịch dòng lệnh Python. Bạn có thể tìm hiểu về cách tạo mô-đun của riêng mình bằng cách đọc bài viết Cách viết mô-đun bằng Python 3.

Các mô-đun có thể định nghĩa các hàm, lớp và biến mà bạn có thể tham chiếu trong các tệp Python .py khác hoặc thông qua trình thông dịch dòng lệnh Python.

Trong Python, các mô-đun được truy cập bằng cách sử dụng câu lệnh nhập. Khi bạn làm điều này, bạn thực thi mã của mô-đun, giữ phạm vi của các định nghĩa để (các) tệp hiện tại của bạn có thể sử dụng chúng.

Ví dụ, khi Python nhập một mô-đun có tên là hello, trước tiên, trình thông dịch sẽ tìm kiếm một mô-đun tích hợp sẵn có tên là hello. Nếu không tìm thấy mô-đun tích hợp sẵn, trình thông dịch Python sẽ tìm kiếm một tệp có tên hello.py trong danh sách các thư mục mà nó nhận được từ biến sys.path.

Hướng dẫn này sẽ hướng dẫn bạn cách kiểm tra và cài đặt mô-đun, nhập mô-đun và đặt răng cưa cho mô-đun.

Điều kiện tiên quyết

Bạn nên cài đặt Python 3 và thiết lập môi trường lập trình trên máy tính hoặc máy chủ của mình. Nếu bạn chưa thiết lập môi trường lập trình, bạn có thể tham khảo hướng dẫn cài đặt và thiết lập cho môi trường lập trình cục bộ hoặc môi trường lập trình trên máy chủ phù hợp với hệ điều hành của bạn (Ubuntu, CentOS, Debian, v.v.)

Kiểm tra và cài đặt các mô-đun

Có một số mô-đun được tích hợp trong Python Standard Library, thư viện này chứa nhiều mô-đun cung cấp quyền truy cập vào chức năng hệ thống hoặc cung cấp các giải pháp được tiêu chuẩn hóa. Python Standard Library là một phần của mọi cài đặt Python.

Thông tin: Để làm theo mã ví dụ trong hướng dẫn này, hãy mở Python shell tương tác trên hệ thống cục bộ của bạn bằng cách chạy lệnh python3. Sau đó, bạn có thể sao chép, dán hoặc chỉnh sửa các ví dụ bằng cách thêm chúng vào sau dấu nhắc >>>.

Để kiểm tra xem các mô-đun Python này đã sẵn sàng hoạt động hay chưa, hãy nhập vào môi trường lập trình Python 3 cục bộ hoặc môi trường lập trình dựa trên máy chủ của bạn và khởi động trình thông dịch Python trong dòng lệnh của bạn như sau:

  1. python

Từ bên trong trình thông dịch, bạn có thể chạy câu lệnh import để đảm bảo rằng mô-đun đã cho sẵn sàng được gọi, như trong:

  1. import math

math là một mô-đun tích hợp sẵn nên trình thông dịch của bạn sẽ hoàn thành tác vụ mà không cần phản hồi, quay lại lời nhắc. Điều này có nghĩa là bạn không cần phải làm gì để bắt đầu sử dụng mô-đun math.

Hãy chạy câu lệnh import với một mô-đun mà bạn có thể chưa cài đặt, chẳng hạn như thư viện đồ thị 2D matplotlib:

  1. import matplotlib

Nếu matplotlib chưa được cài đặt, bạn sẽ gặp lỗi như sau:

Output
ImportError: No module named 'matplotlib'

Bạn có thể tắt trình thông dịch Python bằng CTRL + D rồi cài đặt matplotlib bằng pip.

Tiếp theo, chúng ta có thể sử dụng pip để cài đặt mô-đun matplotlib:

  1. pip install matplotlib

Sau khi được cài đặt, bạn có thể nhập matplotlib trong trình thông dịch Python bằng cách sử dụng import matplotlib và quá trình này sẽ hoàn tất mà không gặp lỗi.

Nhập mô-đun

Để sử dụng các chức năng trong một mô-đun, bạn sẽ cần nhập mô-đun đó bằng một câu lệnh import.

Câu lệnh import được tạo thành từ từ khóa import cùng với tên của mô-đun.

Trong một tệp Python, điều này sẽ được khai báo ở đầu mã, dưới bất kỳ dòng shebang hoặc nhận xét chung nào.

Vì vậy, trong tệp chương trình Python my_rand_int.py, chúng tôi sẽ nhập mô-đun random để tạo số ngẫu nhiên theo cách này:

my_rand_int.py
import random

Khi chúng tôi nhập một mô-đun, chúng tôi sẽ cung cấp mô-đun đó cho chúng tôi trong chương trình hiện tại của chúng tôi dưới dạng một không gian tên riêng biệt. Điều này có nghĩa là chúng ta sẽ phải tham chiếu đến hàm theo ký hiệu dấu chấm, như trong [module].[function].

Trong thực tế, với ví dụ về mô-đun ngẫu nhiên, đây có thể giống như một chức năng như:

  • random.randint() gọi hàm trả về một số nguyên ngẫu nhiên, hoặc
  • random.randrange() gọi hàm trả về một phần tử ngẫu nhiên từ một phạm vi đã chỉ định.

Hãy tạo một vòng lặp for để chỉ ra cách chúng ta sẽ gọi một hàm của mô-đun random trong chương trình my_rand_int.py của mình:

my_rand_int.py
import random


for i in range(10):
    print(random.randint(1, 25))

Chương trình nhỏ này trước tiên nhập mô-đun random trên dòng đầu tiên, sau đó chuyển sang vòng lặp for sẽ hoạt động với 10 phần tử. Trong vòng lặp, chương trình sẽ in một số nguyên ngẫu nhiên trong phạm vi từ 1 đến 25 (bao gồm). Các số nguyên 125 được chuyển đến random.randint() làm tham số của nó.

Khi chúng tôi chạy chương trình với python my_rand_int.py, chúng tôi sẽ nhận được 10 số nguyên ngẫu nhiên làm đầu ra. Vì đây là những số ngẫu nhiên nên bạn có thể sẽ nhận được các số nguyên khác nhau mỗi khi chạy chương trình, nhưng chúng sẽ tạo ra một số thứ như sau:

Output
6 9 1 14 3 22 10 1 15 9

Các số nguyên không bao giờ được dưới 1 hoặc trên 25.

Nếu bạn muốn sử dụng các hàm từ nhiều mô-đun, bạn có thể làm như vậy bằng cách thêm nhiều câu lệnh import:

my_rand_int.py
import random
import math

Bạn có thể thấy các chương trình nhập nhiều mô-đun bằng dấu phẩy phân tách chúng — như trong import random, math — nhưng điều này không nhất quán với Hướng dẫn PEP 8 Style.

Để sử dụng mô-đun bổ sung của chúng tôi, chúng tôi có thể thêm hằng số pi từ math vào chương trình của mình và giảm số lượng số nguyên ngẫu nhiên được in ra:

my_rand_int.py
import random
import math


for i in range(5):
    print(random.randint(1, 25))

print(math.pi)

Bây giờ, khi chúng tôi chạy chương trình của mình, chúng tôi sẽ nhận được đầu ra giống như thế này, với giá trị gần đúng của pi là dòng đầu ra cuối cùng của chúng tôi:

Output
18 10 7 13 10 3.141592653589793

Câu lệnh import cho phép bạn nhập một hoặc nhiều mô-đun vào chương trình Python của mình, cho phép bạn sử dụng các định nghĩa được tạo trong các mô-đun đó.

Sử dụng fromimport

Để tham chiếu đến các mục từ một mô-đun trong không gian tên của chương trình, bạn có thể sử dụng câu lệnh fromimport. Khi bạn nhập các mô-đun theo cách này, bạn có thể tham khảo các chức năng theo tên thay vì thông qua ký hiệu dấu chấm.

Trong cấu trúc này, bạn có thể chỉ định định nghĩa nào để tham khảo trực tiếp.

Trong các chương trình khác, bạn có thể thấy câu lệnh import tham chiếu đến mọi thứ được xác định trong mô-đun bằng cách sử dụng dấu hoa thị (*) làm ký tự đại diện, nhưng điều này không được PEP 8 khuyến khích.

Trước tiên, hãy xem lại việc nhập một chức năng cụ thể, randint() từ mô-đun random:

my_rand_int.py
from random import randint

Ở đây, trước tiên chúng tôi gọi từ khóa from, sau đó random cho mô-đun. Tiếp theo, chúng tôi sử dụng từ khóa import và gọi chức năng cụ thể mà chúng tôi muốn sử dụng.

Bây giờ, khi chúng ta triển khai chức năng này trong chương trình của mình, chúng ta sẽ không còn viết hàm dưới dạng ký hiệu dấu chấm là random.randint() mà thay vào đó sẽ chỉ viết randint():

my_rand_int.py
from random import randint


for i in range(10):
    print(randint(1, 25))

Khi bạn chạy chương trình, bạn sẽ nhận được đầu ra tương tự như những gì chúng tôi đã nhận được trước đó.

Sử dụng cấu trúc fromimport cho phép chúng ta tham chiếu các phần tử đã xác định của một mô-đun trong không gian tên của chương trình, cho phép chúng ta tránh ký hiệu dấu chấm.

Mô-đun răng cưa

Có thể sửa đổi tên của các mô-đun và chức năng của chúng trong Python bằng cách sử dụng từ khóa as.

Bạn có thể muốn thay đổi tên vì bạn đã sử dụng cùng một tên cho một thứ khác trong chương trình của mình, một mô-đun khác mà bạn đã nhập cũng sử dụng tên đó hoặc bạn có thể muốn viết tắt một tên dài hơn mà bạn đang sử dụng nhiều.

Việc xây dựng câu lệnh này trông giống như sau:

import [module] as [another_name]

Hãy sửa đổi tên của mô-đun math trong tệp chương trình my_math.py của chúng tôi. Chúng tôi sẽ thay đổi tên mô-đun math thành m để viết tắt nó. Chương trình sửa đổi của chúng tôi sẽ trông như thế này:

my_math.py
import math as m


print(m.pi)
print(m.e)

Trong chương trình, bây giờ chúng ta gọi hằng số pim.pi thay vì math.pi.

Đối với một số mô-đun, việc sử dụng bí danh là điều bình thường. Tài liệu chính thức của mô-đun matplotlib.pyplot yêu cầu sử dụng plt làm bí danh:

import matplotlib.pyplot as plt

Điều này cho phép các lập trình viên thêm từ plt ngắn hơn vào bất kỳ chức năng nào có sẵn trong mô-đun, như trong plt.show(). Bạn có thể thấy câu lệnh nhập bí danh này được sử dụng trong “Hướng dẫn cách vẽ biểu đồ dữ liệu trong Python 3 bằng cách sử dụng matplotlib” của chúng tôi.

Kết luận

Khi chúng tôi nhập các mô-đun, chúng tôi có thể gọi các hàm không được tích hợp trong Python. Một số mô-đun được cài đặt như một phần của Python và một số chúng tôi sẽ cài đặt thông qua pip.

Việc sử dụng các mô-đun cho phép chúng tôi làm cho các chương trình của mình mạnh mẽ hơn khi chúng tôi tận dụng mã hiện có. Chúng ta cũng có thể tạo các module riêng cho mình và cho các lập trình viên khác để sử dụng trong các chương trình sau này.

Tham gia kênh Telegram của CloudFly để nhận thêm ưu đãi và không bỏ lỡ bất kỳ khuyến mãi nào từ CloudFly
Chia sẻ

0 câu trả lời