+2

Toán tử trong Python

Sau bài viết trước, chúng ta đã làm quen các câu lệnh cơ bản trong Python. Và ở bài viết này tập trung vào tìm hiểu các toán tử cơ bản trong Python và áp dụng vào làm một bài luyện tập nhỏ.

Toán tử

Trong python, các toán tử được được cũng cấp trong module Operator (Lib/operator.py) - Là một bộ các hàm chức năng, tương ứng với các toán tử của Python. Ví dụ, operator.add (x, y) tương đương với biểu thức x + y. Bạn có thể bắt gặp các hàm, kiểu như:

operator.add(a, b)
operator.lt(a, b)
operator.le(a, b)
operator.__lt__(a, b)
operator.__le__(a, b)
# ...

Tên của các hàm chức năng này khá đặc biệt với các dấu gạch dưới. Tuy nhiên, có các biến thể không bắt đầu hoặc kết thúc bằng __ để cho việc sử dụng được tiện lợi.

Toán tử là một trong số các thành phần cơ bản nhất trong một ngôn ngữ lập trình. Mỗi toán tử là một ký hiệu đặc biệt như: +, -, * /, %... được map với các hàm (functions) tương ứng trong module operator vừa đề cập ở trên. Giúp cho việc sử dụng dễ dàng, đơn giản và ngắn gọn hơn.

Ví dụ: 1 + 2, thì chữ số 1 và chữ số 2 được coi là toán hạng, ký hiệu "+" được gọi là toán tử. Toán tử này sẽ thực hiện phép toán cộng hai toán hạng 1 và 2, trả về kết quả là 3. Và nó được map với hàm add(1, 2).

Dưới đây một số ví dụ cho sự mapping giữa các toán tử và các hàm chức năng trong module operator:

Operation Syntax Function
Phép cộng a + b add(a, b)
Nối chuỗi seq1 + seq2 concat(seq1, seq2)
Kiểm tra chứa chuỗi obj in seq contains(seq, obj)
Chia a / b truediv(a, b)
Chia a // b floordiv(a, b)
And các bit a & b and_(a, b)
Xor a ^ b xor(a, b)
Đảo bit ~ a invert(a)
Or a l b or_(a, b)
Luy thừa a ** b pow(a, b)
Nhân a * b mul(a, b)
Đảo dấu - a neg(a)
Cắt mảng seq[i:j] getitem(seq, slice(i, j))
Trừ a - b sub(a, b)
Nhơ hơn a < b lt(a, b)
Nhỏ hơn hoặc bằng a <= b le(a, b)
So sánh bằng a == b eq(a, b)
So sánh khác a != b ne(a, b)
So sánh lớn hơn hoặc bằng a >= b ge(a, b)
So sánh lớn hơn a > b gt(a, b)

Phân loại

Dựa trên chức năng, toán tử trong Python được chia làm 7 nhóm:

  • Toán tử số học
  • Toán tử logic
  • Toán tử gán
  • Toán tử quan hệ (còn gọi là toán tử so sánh)
  • Toán tử membership
  • Toán tử identify
  • Toán tử thao tác bit

Nhóm toán tử số học

Gồm các toán tử có chức năng xử lý, thao tác toán học giữa các tập dữ liệu số học. Bao gồm các toán tử cho các phép toán như: cộng (+), trừ (-), nhân (*), chia (/), lũy thừa (**)...

Operation Syntax Function
Phép cộng a + b add(a, b)
Chia a / b truediv(a, b)
Chia a // b floordiv(a, b)
Luy thừa a ** b pow(a, b)
Nhân a * b mul(a, b)
Trừ a - b sub(a, b)

Ví dụ:

>>> 1+2
3
>>> 3-2
1
>>> 1.25 / 0.5
2.5
>>> 1.25 % 0.5
0.25
>>> 2**3
8

Nhóm toán tử logic

Là những toán tử thể hiện có mệnh đề AND, OR, NOT. Thường được sử dụng trong các biểu thức logic, có thể đi kèm với các toán tử quan hệ.

  • and: Phép Và. Nếu cả hai điều kiện là true thì kết quả sẽ là true
  • or: Phép Hoặc. Nếu một trong hai điều kiện là true thì kết quả là true
  • not: Phép phủ định. Được sử dụng để đảo ngược trạng thái logic của toán hạng

Toán tử quan hệ

Là những toán tử dùng để kiểm tra mối tương quan giữa các toán hạng chính là những phép so sánh như: so sánh bằng, lớn hơn, nhỏ hơn... Một số ký hiệu toán tử quan hệ:

Operation Syntax Function
Nhơ hơn a < b lt(a, b)
Nhỏ hơn hoặc bằng a <= b le(a, b)
So sánh bằng a == b eq(a, b)
So sánh khác a != b ne(a, b)
So sánh lớn hơn hoặc bằng a >= b ge(a, b)
So sánh lớn hơn a > b gt(a, b)

☕️☕️ Nếu thấy nội dung này bổ ích, hãy mời tôi một tách cà phê nha! https://kimyvgy.webee.asia


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí