Bài 11: Operators – Toán tử trong lập trình Python

Cũng như nhiều ngôn ngữ lập trình khác, Operators – là các toán tử trong lập trình Python được sử dụng để thực hiện các phép tính toán, xử lý logic và các nghiệp vụ khác. Python hỗ trợ nhiều loại toán tử khác nhau. Chúng ta cùng tìm hiểu về các loại toán tử trong lập trình Python và các sử dụng chúng.

Danh mục bài viết Python

Toán tử Số học

Toán tửKý hiệuÝ nghĩa
Cộng+Cộng các toán hạng (ví dụ: 3+8)
TrừTrừ các toán hạng (ví dụ: 9-4)
Nhân*Nhân các toán hạng (ví dụ: 8*7)
Chia/Chia các toán hạng ở bên trái cho toán hạng ở bên phải (ví dụ: 21/7)
Chia lấy dư%Chia toán hạng ở bên trái cho toán hạng ở bên phải và trả về phần dư (ví dụ: 12%5)
Chia lấy phần nguyên//Chia toán hạng bên trái cho toán hạng bên phải và lấy phần nguyên
Lũy thừa**Tính lũy thừa của toán hạng bên trái với lũy thừa là toán hạng bên phải (ví dụ: 5**2)

Python hỗ trợ tất cả các toán tử số học phổ biến dùng để thực hiện cộng, trừ, nhân, chia, luỹ thừa và tính phần dư.

a = 10
b = 5
print(a + b) # --> Kết quả: 15 (= 10 + 5)
print(a - b) # --> Kết quả: 5 (= 10 - 5)
print(a/b)   # --> Kết quả: 2 (= 10 : 5)
print(a*b)   # --> Kết quả: 50 (= 10 x 5)
print(a%b)   # --> Kết quả: 0 (10 : 5 dư 0)
print(a**b)  # --> Kết quả: 100000 (= 10^5)

Toán tử So sánh

Toán tử so sánh dùng để so sánh các giá trị với nhau. Ví dụ:

a = 5
b = 10
# Kiểm tra a nhỏ hơn b
print(a < b) # True
# Kiểm tra a lớn hơn b
print(a > b) # False
# Kiểm tra a nhỏ hơn 5
print(a < 5) # False
# Kiểm tra a khác b
print(a != b) # True
# Kiểm tra a khác 5
print(a != 5) # False
# Kiểm tra a bằng 5
print(a == 5) # True
# Kiểm tra a nhỏ hơn hoặc bằng 5
print(a <= 5) # True
# Kiểm tra a lớn hơn hoặc bằng 5
print(a >= 5) # True

Ở trên bạn chú ý để so sánh ngang bằng chúng ta sử dụng hai dấu bằng == thay vì chỉ 1 dấu =

Phép gán

Toán tử gán giá trị dùng để thiết lập giá trị ban đầu hoặc thay đổi giá trị của biến. Một trong những toán tử gán giá trị mà chúng ta hay sử dụng ở các ví dụ trước đây là toán tử =

my_name = "Kinh Kan"
my_age = 26

Ngoài ra chúng ta còn có toán tử += cũng dùng để gán giá trị:

a = 5
b = 10
print(a) # 5
a += b # Tương đương a = a + b
print(a) # 15

a += 3 # Tương đương a = a + 3
print(a) # 18

Tương tự chúng ta cũng có các toán tử -=*=/= và **=:

a = 10
b = 5
a -= b # Tương đương a = a - b
print(a) # 5 (= 10 - 5)
a *= b # Tương đương a = a * b
print(a) # 25 (= 5 x 5)
a /= b # Tương đương a = a / b
print(a) # 5 (= 25 : 5)
a **= b # Tương đương a = a**b
print(a) # 3125 (= 5^5)

Toán Tử Logic

Toán tử logic dùng để thực hiện các phép toán logic gồm có:

  • Toán tử and dùng thực hiện phép toán logic 
  • Toán tử or dùng thực hiện phép toán logic hoặc
  • Toán tử not dùng thực hiện phép toán logic phủ định

Ví dụ:

a = True
b = False
print(a and b) # False
print(a or b) # True
print(!a) # False
print(!b) # True

Toán tử Membership

Toán tử membership dùng để kiểm tra sự tồn tại của một giá trị trong một giá trị cho trước. Giá trị cho trước này thường có kiểu dữ liệu là string (chuỗi), list (danh sách), tuple… Python có hai toán tử membership là in và not in (ngược lại của in).

Ví dụ:

a = "Hello World!"
print("W" in a) # True
print("o" in a) # True
print("w" in a) # False
print("!" not in a) # False

Thứ tự ưu tiên các toán tử trong lập trình Python

Toán tử (Thứ tự ưu tiên giảm dần)Ý nghĩa
**Số mũ, lũy thừa
*, /, //, %Nhân, Chia, Chia lấy phần nguyên, Chia lấy phần dư
+, –Cộng, Trừ
<=, <, >, >=Các phép so sánh
=, %=, /=, //=, -=, +=, *=, **=Toán tử gán
is, is notToán tử định danh
in, not inToán tử Membership
not, or, andToán tử logic NOT, OR, AND

Ví dụ:

# Toán tử số học
x = 4
y = 5
tong = x + y
print("Tổng của x + y: " + str(tong))

# Toán tử so sánh
x = 4
y = 5
print('x > y  là: ', x > y)

# Toán tử gán
num1 = 4
num2 = 5
print("Line 1 - Giá trị của num1 : ", num1)
print("Line 2 - Giá trị của num2 : ", num2)

# Toán tử gán
num1 = 4
num2 = 5
res = num1 + num2
res += num1
print("Line 1 - Kết quả phép + là ", res)

# Toán tử login
a = True
b = False
print('a and b is', a and b)
print('a or b is', a or b)
print('not a is', not a)

# Toán tử Membership
x = 4
y = 8
list = [1, 2, 3, 4, 5];
if (x in list):
    print("Line 1 - x có trong danh sách")
else:
    print("Line 1 - x không có trong danh sách")
if (y not in list):
    print("Line 2 - y không có trong danh sách")
else:
    print("Line 2 - y có trong danh sách")

# Identity Operators
x = 20
y = 20
if (x is y):
    print("x & y  giống nhau")
y = 30
if (x is not y):
    print("x & y khác nhau")

# Operator precedence
v = 4
w = 5
x = 8
y = 2
z = 0
z = (v + w) * x / y;
print("Giá trị của (v+w) * x/ y là ", z)