Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.
Phép toán Modulo trong Python
Trong bài viết này, bạn sẽ tìm hiểu về toán tử modulo (%) trong Python và cách sử dụng nó một cách hiệu quả. Toán tử modulo là một công cụ hữu ích trong nhiều tình huống lập trình, từ kiểm tra tính chẵn lẻ của số, chuyển đổi đơn vị thời gian, đến các phép toán liên quan đến chu kỳ và vòng lặp. Việc hiểu rõ và sử dụng thành thạo toán tử modulo sẽ giúp bạn tối ưu hóa mã nguồn và giải quyết các bài toán phức tạp một cách đơn giản hơn. Hãy cùng tìm hiểu cách thức hoạt động của toán tử này và những ứng dụng thực tế của nó trong Python.
Giới thiệu về toán tử modulo trong Python
Python sử dụng dấu phần trăm (%) như là toán tử modulo. Toán tử modulo luôn tuân theo phương trình sau:
Trong phương trình này:
Bài viết này được đăng tại [free tuts .net]
- N là tử số.
- D là mẫu số.
- // là toán tử chia lấy phần nguyên.
- % là toán tử modulo.
Nếu cả N và D đều là số nguyên dương, toán tử modulo sẽ trả về phần dư của N / D. Tuy nhiên, đối với các số âm, kết quả có thể khác biệt. Vì vậy, bạn luôn nên tuân theo phương trình trên.
Ví dụ đơn giản về toán tử modulo trong Python
Ví dụ sau minh họa cách sử dụng toán tử modulo (%) với các số nguyên dương:
a = 16 b = 5 m = a % b f = a // b # hiển thị kết quả print(f'{a} % {b} = {m}') # 1 print(f'{a} // {b} = {f}') # 3
Kết quả:
1 3
Đối với các số dương, kết quả khá rõ ràng. Bạn có thể kiểm tra phương trình một cách nhanh chóng:
Ví dụ sau cho thấy cách sử dụng toán tử modulo (%) với các số nguyên âm:
a = -16 b = 5 m = a % b f = a // b # hiển thị kết quả print(f'{a} % {b} = {m}') # 4 print(f'{a} // {b} = {f}') # -4
Kết quả:
4 -4
Phương trình cũng được thỏa mãn:
Các ví dụ thực tế về toán tử modulo trong Python
Hãy xem một số ví dụ thực tế về việc sử dụng toán tử modulo (%).
Sử dụng toán tử modulo để kiểm tra xem một số có phải là số chẵn hay lẻ hay không:
def is_even(num): return num % 2 == 0 def is_odd(num): return num % 2 != 0
Sử dụng toán tử modulo để chuyển đổi đơn vị:
Ví dụ sau sử dụng toán tử modulo (%) để chuyển đổi giây thành ngày, giờ, phút và giây. Điều này có thể hữu ích nếu bạn muốn phát triển một chương trình đếm ngược:
from math import floor def get_time(total_seconds): return { 'days': floor(total_seconds / 60 / 60 / 24), 'hours': floor(total_seconds / 60 / 60) % 24, 'minutes': floor(total_seconds / 60) % 60, 'seconds': total_seconds % 60, } print(get_time(93750))
Kết quả:
{'days': 1, 'hours': 2, 'minutes': 2, 'seconds': 30}
Kết bài
Python sử dụng dấu phần trăm (%) làm toán tử modulo. Toán tử này giúp bạn dễ dàng tìm ra phần dư của phép chia giữa hai số. Quan trọng hơn, toán tử modulo (%) luôn thỏa mãn phương trình . Hiểu và sử dụng thành thạo toán tử modulo sẽ giúp bạn giải quyết nhiều bài toán một cách hiệu quả hơn trong lập trình Python. Từ việc kiểm tra số chẵn lẻ đến chuyển đổi đơn vị thời gian, toán tử này đều đóng vai trò quan trọng và hữu ích.