Python dainganxanh
  • Lời nói đầu
  • Chương I. SƠ LƯỢC
    • Bài 1. Cài đặt môi trường
    • Bài 2. Từ khóa và định danh
    • Bài 3. Câu lệnh, khối lệnh và chú thích
    • Bài 4. Nhập, xuất dữ liệu
    • Bài 5. Toán tử và lệnh gán
    • Bài 6. Biến, Hằng
    • Bài 7. Kiểu dữ liệu
    • Bài 8. Thao tác với tệp (cơ bản)
    • Bài 9. Tổng quan về Python
    • Bài tập chương 1
  • Chương II. RẼ NHÁNH - LẶP
    • Bài 10. Cấu trúc rẽ nhánh if…else
    • Bài 11. Cấu trúc lặp với for
    • Bài 12. Cấu trúc lặp với while
    • Bài 13. Lệnh break và continue
    • Bài tập chương 2
  • Chương III. HÀM & MODULE
    • Bài 14. Hàm
    • Bài 15. Tham số hàm
    • Bài 16. Đệ quy
    • Bài 17. Hàm ẩn danh
    • Bài 18. Biến toàn cục và cục bộ
    • Bài 19. Module
    • Bài 20. Package
  • Chương IV. KIỂU DỮ LIỆU
    • Bài 21. Dữ liệu kiểu số
    • Bài 22. Dữ liệu kiểu string
    • Bài 23. Dữ liệu kiểu list
    • Bài 24. Dữ liệu kiểu tuple
    • Bài 25. Dữ liệu kiểu set
    • Bài 26. Dữ liệu kiểu dictionary
  • Chương V. TỆP & THƯ MỤC
    • Bài 27. Đọc và ghi file
    • Bài 28. Quản lý file và folder
  • Chương VI. LỖI & NGOẠI LỆ
    • Bài 29. Ngoại lệ
    • Bài 30. Xử lý ngoại lệ
    • Bài 31. Xây dựng ngoại lệ
  • Chương VII. HƯỚNG ĐỐI TƯỢNG
    • Bài 32. Lập trình hướng đối tượng
    • Bài 33. Đối tượng và Lớp
    • Bài 34. Kế thừa
    • Bài 35. Đa kế thừa
    • Bài 36. Nạp chồng toán tử
  • Chương VIII. NGÀY - GIỜ
    • Python datetime
    • Python strftime()
    • Python strptime()
    • Current date and time
    • Get Current time
    • Timestamp to datetime
    • Python time Module
    • Python sleep()
  • Chương IX. CHỦ ĐỀ NÂNG CAO
    • Python Iterators
    • Python Generators
    • Python Closures
    • Python Decorators
    • Python @property decorator
    • Python RegEx
    • Python Examples
  • PHỤ LỤC - GHI CHÉP
    • Hàm map()
    • Cài Sublime Text để code Python
    • Ghi chép - ghi chú
    • Mảng 2 chiều
    • Công thức với dãy số
  • Tài liệu tham khảo
  • www.dainganxanh.com
  • 🐍Khóa học Python
  • 🤷‍♀️Hỏi đáp, chia sẻ (FG)
  • 🎮Sinh Test chấm Themis
Powered by GitBook
On this page
  • 1. Tạo và sử dụng module
  • 2. Câu lệnh import
  • Lệnh import theo tên module
  • Lệnh import đổi tên module
  • Câu lệnh import có chỉ định đối tượng
  • Lưu file Module ở đâu?
  • Trong file module có gì?

Was this helpful?

  1. Chương III. HÀM & MODULE

Bài 19. Module

Một module (đọc là mô-đun) là một file chứa mã Python, ví dụ file vidumodule.py là một module và module này có tên là vidumodule (tên module là tên file).

Chúng ta sử dụng các module để chia nhỏ các chương trình lớn thành các tệp nhỏ để dễ quản lý và sắp xếp. Đồng thời sử dụng module cho phép ta dùng lại các hàm đã xây dựng mà không phải viết lại.

1. Tạo và sử dụng module

Bước 1. Gõ nội dung dưới đây và lưu file với tên vidumodule.py . Lưu ý: file vidumodule.py được lưu cùng thư mục với file chương trình Python (thường là file main.py).

# Module vidu
def cong(a, b):
   """phép cộng 2 số """

   kq = a + b
   return kq

Bước 2. Sử dụng mudule vừa tạo

import vidumodule

s = vidumodule.cong(4,5)
print(s)

Output: 9

Chú thích: Câu lệnh dòng 1: Câu lệnh import để gọi (nhập) module có tên là vidumodule vào chương trình. Câu lệnh dòng 3: Sử dụng hàm cong() đã được định nghĩa trong module vidumodule .

2. Câu lệnh import

Câu lệnh import dùng để gọi (nhập/nhúng) module vào chương trình Python. Sau khi đã import ta có thể gọi hàm trong module theo cú pháp: tên module.tên hàm.

Có 3 cách import module như sau:

Lệnh import theo tên module

import math
print("Căn bậc hai của 4 là: ", math.sqrt(4) )

Chương trình trên import module math sau đó gọi hàm sqrt() đã được định nghĩa trong module math.

Output: 2.0

Lệnh import đổi tên module

import math as m
print("Căn bậc hai của 4 là: ", m.sqrt(4) )

Câu lệnh import có chỉ định đối tượng

from math import sqrt
print("Căn bậc hai của 4 là: ", sqrt(4) )

Câu lệnh import trong chương trình trên chỉ dùng được hàm sqrt, các hàm khác của module không dùng được.

Xem xét thêm chương trình sau:

from math import sqrt, pi
print("Căn bậc hai của 4 là: ", sqrt(4) )
print('Pi = ', pi)

Hoặc

from math import *
print("Căn bậc hai của 4 là: ", sqrt(4) )
print('Pi = ', pi)

Cả 2 chương trình trên đều có Output: Căn bậc hai của 4 là: 2.0 Pi = 3.141592653589793

Lưu file Module ở đâu?

File module phải được lưu trữ trong phạm vi thư mục cho phép của Python thì chương trình mới có thể gọi và import vào để sử dụng.

Khi import, Python sẽ tìm kiếm file module ở nhiều nơi. Trình thông dịch sẽ tìm kiếm một mô-đun tích hợp sẵn trước. Sau đó (nếu không tìm thấy mô-đun tích hợp sẵn), Python sẽ tìm trong các thư mục được xác định trong sys.path.

Việc tìm kiếm ưu tiên theo thứ tự sau:

  • Thư mục hiện tại (thư mục lưu file chương trình chính).

  • PYTHONPATH (một biến liệt kê danh sách các thư mục).

  • Thư mục cài đặt Python.

Ta có thể xem Python parth mặc định bằng lệnh path trong module sys

import sys
print(sys.path)

Trong file module có gì?

Để xem trong file module có những đối tượng nào đã được định nghĩa ta dùng câu lệnh dir(tên module). Ví dụ:

import math
print(dir(math))

Output: ['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'pi', 'pow', 'radians', 'remainder', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau', 'trunc']

Muốn biết đối tượng (hàm) được định nghĩa trong module có chức năng gì ta dùng phương thức gọi docstring.

Ví dụ, ta thử xem hàm có tên factorial trong module math có chức năng gì:

import math
print(math.factorial.__doc__)

Output: Find x!. Raise a ValueError if x is negative or non-integral.

PreviousBài 18. Biến toàn cục và cục bộNextBài 20. Package

Last updated 4 years ago

Was this helpful?