Các Loại Toán Tử (operator) được Hỗ Trợ Trong Python - Góc Học IT

Toán tử (operator) là các ký hiệu đặc biệt trong Python để thực hiện các phép tính số học hoặc logic trên các giá trị hoặc biến. Python hỗ trợ các toán tử như:

    • Toán tử số học (arithmetic operator)
    • Toán tử so sánh (comparison operator)
    • Toán tử logic (logical operator)
    • Toán tử trên bit (bitwise operator)
    • Toán tử gán (assignment operator)
    • Một số toán tử khác

1. Toán tử số học (arithmetic operator)

Bảng bên dưới thể hiện các toán tử số học trong Python.

Toán tử (operator)Ý nghĩaVí dụ
+Cộng 2 toán hạngx + y+ 2
Trừ 2 toán hạngx – y- 2
*Nhân 2 toán hạngx * y
/Toán hạng bên trái bị chia bởi toán hạng bên phải (kết quả luôn luôn là số thực)x / y
%Trả về phần dư khi chia toán tử bên trái cho toán tử bên phảix % y
//Trả về phần nguyên khi chia toán tử bên trái cho toán tử bên phảix // y
**Toán hạng bên trái lũy thừa toán hạng bên phảix**y (có nghĩa là xy)

Ví dụ:x = 9 y = 4 # Output: x + y = 13 print('x + y =', x+y) # Output: x - y = 5 print('x - y =',x-y) # Output: x * y = 36 print('x * y =', x*y) # Output: x / y = 2.25 print('x / y =', x/y) # Output: x % y = 1 print('x % y =', x%y) # Output: x // y = 2 print('x // y =', x//y) # Output: x ** y = 6561 print('x ** y =', x**y)

Kết quả
x + y = 13 x - y = 5 x * y = 36 x / y = 2.25 x % y = 1 x // y = 2 x ** y = 6561

2. Toán tử so sánh (comparison operator)

Bảng bên dưới thể hiện các toán tử so sánh trong Python.

Toán tử (operator)Ý nghĩaVí dụ
> Trả về True nếu toán hạng bên trái lớn hơn toán hạng bên phải và ngược lại trả về Falsex > y
< Trả về True nếu toán hạng bên trái nhỏ hơn toán hạng bên phải và ngược lại trả về Falsex < y
==Trả về True nếu cả 2 toán hạng bằng nhau và ngược lại trả về Falsex == y
!=Trả về True nếu cả 2 toán hạng không bằng nhau và ngược lại trả về Falsex != y
>=Trả về True nếu toán hạng bên trái lớn hơn hoặc bằng toán hạng bên phải và ngược lại trả về Falsex >= y
<=Trả về True nếu toán hạng bên trái nhỏ hơn hoặc bằng toán hạng bên phải và ngược lại trả về Falsex <= y

Ví dụ:x = 13 y = 33 # Output: x > y is False print('x(13) > y(33) is', x>y) # Output: x < y is True print('x(13) < y(33) is', x<y) # Output: x == y is False print('x(13) == y(33) is', x==y) # Output: x != y is True print('x(13) != y(33) is', x!=y) # Output: x >= y is False print('x(13) >= y(33) is', x>=y) # Output: x <= y is True print('x(13) <= y(33) is', x<=y)

Kết quả
x(13) > y(33) is False x(13) < y(33) is True x(13) == y(33) is False x(13) != y(33) is True x(13) >= y(33) is False x(13) <= y(33) is True

3. Toán tử logic (logical operator)

Bảng bên dưới thể hiện các toán tử logic trong Python.

Toán tử (operator)Ý nghĩaVí dụ
andTrả về True nếu cả 2 toán hạng đều Truex and y
orTrả về True nếu ít nhất một toán hạng Truex or y
notTrả về True nếu toán hạng False, trả về False nếu toán hạng Truenot x

Bảng giá trị của toán tử and

aba and b
TrueTrueTrue
TrueFalseFalse
FalseTrueFalse
FalseFalseFalse

Bảng giá trị của toán tử or

aba or b
TrueTrueTrue
TrueFalseTrue
FalseTrueTrue
FalseFalseFalse

Bảng giá trị của toán tử not

anot a
TrueFalse
FalseTrue

Ví dụ:x = True y = False print('x(True) and y(False) is', x and y) print('x(True) or y(False) is', x or y) print('not x(True) is', not x)

Kết quả
x(True) and y(False) is False x(True) or y(False) is True not x(True) is False

4. Toán tử trên bit (bitwise operator)

Toán tử trên bit thực hiện các thao tác trên từng bit của toán hạng. Toán hạng sẽ được tự động được chuyển đổi để biểu diễn dưới dạng bit rồi thực hiện các toán tử trên bit.

Ví dụ: Ta có x = 10 (biểu diễn bit nhị phân là 0000 1010) và y = 4 (biểu diễn bit nhị phân là 0000 0100). Bảng bên dưới sẽ thực hiện các toán tử trên bit với x và y.

Toán tử (operator)Ý nghĩaVí dụ
&AND trên bitx & y = 0 (0000 0000)
|OR trên bitx | y = 14 (0000 1110)
~NOT trên bit~x = -11 (1111 0101)
^XOR trên bitx ^ y = 14 (0000 1110)
>> Dịch phải chuỗi bitx >> 2 = 2 (0000 0010)
<< Dịch trái chuỗi bitx << 2 = 40 (0010 1000)
# Binary 0000 1010 x = 10 # Binary 0000 0100 y = 4 # Output 0 (0000 0000) print("x & y = ", x & y) # Output 14 (0000 1110) print("x | y = ", x | y) # Output -11 (1111 0101) print("~x = ", ~x) # Output 14 (0000 1110) print("x ^ y = ", x ^ y) # Output 2 (0000 0010) print("x >> y = ", x >> 2) # Output 40 (0010 1000) print("x >> y = ", x << 2)
Kết quả
x & y = 0 x | y = 14 ~x = -11 x ^ y = 14 x >> y = 2 x >> y = 40

Các bạn có thể đọc thêm bài Toán tử trên bit để hiểu hơn về cách các toán tử này hoạt động.

5. Toán tử gán (assignment operator)

Bảng bên dưới thể hiện các toán tử gán trong Python.

Toán tử (operator)Ví dụTương đương
=x = 5x = 5
+=x += 5x = x + 5
-=x -= 5x = x – 5
*=x *= 5x = x * 5
/=x /= 5x = x / 5
%=x %= 5x = x % 5
//=x //= 5x = x // 5
**=x **= 5x = x ** 5
&=x &= 5x = x & 5
|=x |= 5x = x | 5
^=x ^= 5x = x ^ 5
>>=x >>= 5x = x >> 5
<<=x <<= 5x = x << 5

Ví dụ:# Assign value for a và b a = 10 print("a = ", a) b = a print("b = ", b) # Add and assign value b += a print("b +=a then b = ", b) # Subtract and assign value b -= a print("b -=a then b = ", b) # multiply and assign b *= a print("b *=a then b = ", b) # bitwise lishift operator b <<= a print("b <<=a then b = ", b)

Kết quả
a = 10 b = 10 b +=a then b = 20 b -=a then b = 10 b *=a then b = 100 b <<=a then b = 102400

6. Toán tử khác

Python hỗ trợ một số toán tử đặc biệt như identity operator, membership operator.

Toán tử identity trong Python

Toán tử identity giúp kiểm tra 2 giá trị có được lưu trữ trong cùng một vùng nhớ hay không.

Toán tử (operator)Ý nghĩaVí dụ
isTrả về True nếu các toán hạng có giá trị được lưu trong cùng một vùng nhớ (tham chiếu đến cùng một object)x is y
is notTrả về True nếu các toán hạng có giá trị không được lưu trong cùng một vùng nhớ (không tham chiếu đến cùng một object)x is not y

Ví dụ:x1 = 5 y1 = 5 x2 = 'Hello' y2 = 'Hello' x3 = [1,2,3] y3 = [1,2,3] # Output: False print(x1 is not y1) # Output: True print(x2 is y2) # Output: False print(x3 is y3)

Kết quả
False True False

Một đối tượng của lớp int được tạo ra để lưu giá trị 5. Đối tượng này được cấp phát một vùng nhớ để lưu giá trị 5. Biến x1 và y1 cùng tham chiếu đến đối tượng này. Tương tự với lớp str cho x2 và y2.

Nhưng x3 và y3 là danh sách (list). Khi mỗi list được tạo thì sẽ được cấp phát một bộ nhớ riêng để lưu trữ. Do đó, x3 và y3 tham chiếu đến 2 đối tượng khác nhau (2 vùng nhớ khác nhau).

Toán tử membership trong Python

Toán tử membership trong Python được sử dụng để kiểm tra xem một giá trị hoặc một biến có thuộc một kiểu dữ liệu như string, list, tuple, set và dictionary hay không.

Lưu ý: Trong một dictionary, toán tử membership chỉ giúp chúng ta kiểm tra key, chứ không kiểm tra value.

Toán tử (operator)Ý nghĩaVí dụ
inTrả về True nếu giá trị/biến thuộc một kiểu dữ liệu chuỗi5 in x
not inTrả về True nếu giá trị/biến không thuộc thuộc một kiểu dữ liệu chuỗi5 not in x

Ví dụ:x = 'Hello world' y = {1:'a',2:'b'} # Output: True print('H' in x) # Output: True print('hello' not in x) # Output: True print(1 in y) # Output: False print('a' in y)

Kết quả
True True True False

Trong ví dụ trên, ‘H’ thuộc x nhưng ‘hello’ không thuộc x (Python là ngôn ngữ có phân biệt ký tự hoa, ký tự thường). Với dictionary y, 1 là key và ‘a’ là giá trị. Do đó, 1 in y trả về True còn ‘a’ in y trả về False.

  • Java collections framework: Map interface và lớp HashMap
  • Cài đặt môi trường lập trình Web PHP với XAMPP
  • Hướng dẫn sử dụng phần mềm mô phỏng mạch điện tử Proteus
  • Chương trình C++ tính chu vi và diện tích của hình chữ nhật
  • Giới thiệu môn học Ngôn ngữ lập trình Python
5/5 - (1 bình chọn)Bài trước và bài sau trong môn học<< Các kiểu dữ liệu (data type) cơ bản trong PythonNhập xuất (input/output) cơ bản trong Python >>

Từ khóa » Toán Tử Logic Trong Python