Trong cuộc sống hay trong bất kì lĩnh vực nào thì việc tính toán là một phần cực kì quan trọng. Nó không chỉ giúp tính các giá trị mà còn hỗ trợ đưa các đánh giá, nhận xét về thông tin nhận được. Phần cơ bản nhất của của tính toán là các phép toán cơ bản. Như chúng ta cũng đã biết, lập trình có thể hỗ trợ rất tốt trong các công việc tính toán. Trong bài viết này, hãy cùng ICANTECH tìm hiểu về phép chia trong Python.
Các phép toán trong Python được thể hiện thông qua các toán tử toán học. Dưới đây là bảng tổng hợp các toán tử toán học cơ bản trong Python:
Về cơ bản, các toán tử trong Python đã thể hiện được trực quan nhất các phép toán toán học. Sau đây, chúng ta cùng đi vào tìm hiểu sâu hơn về chia hết trong Python
Nhiều người thường thắc mắc “Toán tử trong Python là gì?”, phép chia đơn thuần được thể hiện trong Python qua toán tử / hay nói cách khác đó chính là toán tử trong Python.
Phép chia trong Python thực hiện chia 2 giá trị số cho nhau, 2 giá trị này có thể là kiểu dữ liệu int hoặc float. Bên cạnh đó, phép chia có thể thực hiện trực tiếp việc chia 2 giá trị, chia 2 biến số, chia giá trị cho biến số, chia biến số cho giá trị cố định…
Lưu ý: Kết quả giá trị trả về của phép chia này luôn ở kiểu dữ liệu float.
Ví dụ:
a = 3
b = 10
c = b/a
d = b/2
e = 6/a
print(c, "có kiểu dữ liệu", type(c))
print(d, "có kiểu dữ liệu", type(d))
print(e, "có kiểu dữ liệu", type(e))
print(16/4, "có kiểu dữ liệu", type(16/4))
Kết quả:
3.3333333333333335 có kiểu dữ liệu <class 'float'>
5.0 có kiểu dữ liệu <class 'float'>
2.0 có kiểu dữ liệu <class 'float'>
4.0 có kiểu dữ liệu <class 'float'>
% là phép toán gì trong Python? Đây chính là phép chia lấy phần dư (modulo) trong toán học trả về giá trị phần dư của phép chia 2 số nguyên. Trong đó ký hiệu không chia hết trong Python được hiểu là %.
Cũng giống như phép /, phép chia lấy dư trong Python có thể thực hiện việc lấy phần dư của phép chia 2 giá trị, chia 2 biến số, chia giá trị cho biến số, chia biến số cho giá trị cố định…
Lưu ý: Các giá trị truyền vào cho phép toán này phải ở kiểu dữ liệu int và giá trị trả về của nó cũng là một giá trị có kiểu int.
Ví dụ:
a = 3
b = 11
c = b%a
d = b%2
e = 6%a
print(c, "có kiểu dữ liệu", type(c))
print(d, "có kiểu dữ liệu", type(d))
print(e, "có kiểu dữ liệu", type(e))
print(16%4, "có kiểu dữ liệu", type(16%4))
Kết quả:
2 có kiểu dữ liệu <class 'int'>
1 có kiểu dữ liệu <class 'int'>
0 có kiểu dữ liệu <class 'int'>
0 có kiểu dữ liệu <class 'int'>
Phép chia lấy phần nguyên (div) trong toán học trả về giá trị phần nguyên của phép chia 2 số. // trong python là gì? Phép toán chia lấy phần nguyên được thể hiện qua toán tử // trong Python.
Tương tự phép chia trong Python, đối với phép chia lấy phần nguyên bạn có thể thực hiện việc lấy phần nguyên của phép chia 2 giá trị, chia 2 biến số, chia giá trị cho biến số, chia biến số cho giá trị cố định…
Lưu ý: Nếu ít nhất 1 trong 2 giá trị có kiểu dữ liệu là float thì giá trị trả về mảng kiểu dữ liệu float.
a = 3
b = 11
f = 3.5
c = b//a
d = b//2
e = 6//a
g = b//f
print(c, "có kiểu dữ liệu", type(c))
print(d, "có kiểu dữ liệu", type(d))
print(e, "có kiểu dữ liệu", type(e))
print(16//4, "có kiểu dữ liệu", type(16//4))
print(g, "có kiểu dữ liệu", type(g))
Kết quả:
3 có kiểu dữ liệu <class 'int'>
5 có kiểu dữ liệu <class 'int'>
2 có kiểu dữ liệu <class 'int'>
0 có kiểu dữ liệu <class 'int'>
3.0 có kiểu dữ liệu <class 'float'>
Khi thực hiện bất kì phép chia nào (chia, chia lấy dư, chia lấy nguyên) thì chương trình đều báo lỗi.
Ví dụ 1: Phép chia /
a = 8
b = a/0
print(b)
Báo lỗi:
Traceback (most recent call last):
File "/Users/trunghd/Desktop/SEO/var_seo.py", line 3, in <module>
b = a/0
ZeroDivisionError: division by zero
Ví dụ 2: Phép chia lấy dư %
a = 8
b = a%0
print(b)
Báo lỗi:
Traceback (most recent call last):
File "/Users/trunghd/Desktop/SEO/var_seo.py", line 3, in <module>
b = a%0
ZeroDivisionError: integer division or modulo by zero
Ví dụ 3: Phép chia lấy nguyên //
a = 8
b = a//0
print(b)
Báo lỗi:
Traceback (most recent call last):
File "/Users/trunghd/Desktop/SEO/var_seo.py", line 3, in <module>
b = a//0
ZeroDivisionError: integer division or modulo by zero
Không phải lúc nào các phép chia đều trả về kiểu số nguyên int. Phụ thuộc vào kiểu dữ liệu của số chia và số bị chia mà kiểu dữ liệu sẽ được trả về tương ứng. Vì vậy chúng ta cần phải lưu ý kiểu dữ liệu trả về của các phép chia trong quá trình tính toán.
Cũng giống như toán học, chúng ta có thể kết hợp nhiều toán tử phép toán với nhau để thể hiện các biểu thức phức tạp. Điều cần lưu ý ở đây chính là thứ tự thực hiện các phép toán. Trong lập trình Python, các phép toán vẫn sẽ thực hiện ưu tiên giống như trong toán học. Ngoài ra, các biểu thức toán học có thể kết hợp với các toán tử so sánh để làm điều kiện trong các câu lệnh lặp, câu lệnh rẽ nhánh…
Như vậy, bài viết đã chỉ ra các toán tử tương ứng với các phép chia trong Python. Việc ứng dụng các phép toán trong lập trình là vô cùng quan trọng vì vậy các bạn hãy ứng dụng các kiến thức ở trên để có thể sử dụng thành thạo và tối ưu chương trình của mình. Chúc các bạn thành công!
Nếu bạn đang quan tâm đến học lập trình thì hãy tham khảo ngay các khóa học lập trình Python tại ICANTECH nhé
Nguồn ảnh: ICANTECH.