Python - Operators

Python Operators

Python operators là các ký hiệu đặc biệt được sử dụng để thực hiện các phép toán cụ thể trên một hoặc nhiều toán hạng. Các variables , giá trị hoặc biểu thức có thể được sử dụng làm toán hạng. Ví dụ, toán tử cộng trong Python ( + ) được sử dụng để thực hiện các phép cộng trên hai biến, giá trị hoặc biểu thức.

Các thuật ngữ sau đây liên quan đến Python operators :

  • Unary operators : Python operators that require one operand to perform a specific operation are known as unary operators.
  • Binary operators : Python operators that require two operands to perform a specific operation are known as binary operators.
  • Operands : Variables, values, or expressions that are used with the operator to perform a specific operation.

Types of Python Operators

Các toán tử trong Python được phân loại thành các loại sau:

  • Arithmetic Operators
  • Comparison (Relational) Operators
  • Assignment Operators
  • Logical Operators
  • Bitwise Operators
  • Membership Operators
  • Identity Operators

Hãy cùng xem xét tất cả các toán tử một cách lần lượt.

Python Arithmetic Operators

Python Arithmetic operators được sử dụng để thực hiện các phép toán cơ bản như cộng, trừ, nhân, v.v.

Bảng dưới đây chứa tất cả các toán tử số học với các ký hiệu, tên gọi và ví dụ (giả sử rằng giá trị của a b lần lượt là 10 và 20) −

Operator Name Example
+ Addition a + b = 30
- Subtraction a – b = -10
* Multiplication a * b = 200
/ Division b / a = 2
% Modulus b % a = 0
** Exponent a**b =10**20
// Floor Division 9//2 = 4

Example of Python Arithmetic Operators

a = 21
b = 10
c = 0

c = a + b
print ("a: {} b: {} a+b: {}".format(a,b,c))

c = a - b
print ("a: {} b: {} a-b: {}".format(a,b,c) )

c = a * b
print ("a: {} b: {} a*b: {}".format(a,b,c))

c = a / b
print ("a: {} b: {} a/b: {}".format(a,b,c))

c = a % b
print ("a: {} b: {} a%b: {}".format(a,b,c))

a = 2
b = 3
c = a**b 
print ("a: {} b: {} a**b: {}".format(a,b,c))

a = 10
b = 5
c = a//b 
print ("a: {} b: {} a//b: {}".format(a,b,c))

Output

a: 21 b: 10 a+b: 31
a: 21 b: 10 a-b: 11
a: 21 b: 10 a*b: 210
a: 21 b: 10 a/b: 2.1
a: 21 b: 10 a%b: 1
a: 2 b: 3 a**b: 8
a: 10 b: 5 a//b: 2

Python Comparison Operators

Python Comparison operators so sánh các giá trị ở hai bên của chúng và quyết định mối quan hệ giữa chúng. Chúng cũng được gọi là toán tử so sánh.

Bảng dưới đây chứa tất cả các toán tử so sánh với các ký hiệu, tên và ví dụ (giả sử rằng giá trị của a b lần lượt là 10 và 20) −

Operator Name Example
== Equal (a == b) is not true.
!= Not equal (a != b) is true.
> Greater than (a > b) is not true.
< Less than (a < b) is true.
>= Greater than or equal to (a >= b) is not true.
<= Less than or equal to (a <= b) is true.

Example of Python Comparison Operators

a = 21
b = 10
if ( a == b ):
   print ("Line 1 - a is equal to b")
else:
   print ("Line 1 - a is not equal to b")

if ( a != b ):
   print ("Line 2 - a is not equal to b")
else:
   print ("Line 2 - a is equal to b")

if ( a < b ):
   print ("Line 3 - a is less than b" )
else:
   print ("Line 3 - a is not less than b")

if ( a > b ):
   print ("Line 4 - a is greater than b")
else:
   print ("Line 4 - a is not greater than b")

a,b=b,a #values of a and b swapped. a becomes 10, b becomes 21

if ( a <= b ):
   print ("Line 5 - a is either less than or equal to  b")
else:
   print ("Line 5 - a is neither less than nor equal to  b")

if ( b >= a ):
   print ("Line 6 - b is either greater than  or equal to b")
else:
   print ("Line 6 - b is neither greater than  nor equal to b")

Output

Line 1 - a is not equal to b
Line 2 - a is not equal to b
Line 3 - a is not less than b
Line 4 - a is greater than b
Line 5 - a is either less than or equal to  b
Line 6 - b is either greater than  or equal to b

Python Assignment Operators

Python Assignment operators được sử dụng để gán giá trị cho các biến. Dưới đây là bảng hiển thị tất cả các toán tử gán trong Python.

Bảng dưới đây chứa tất cả các toán tử gán với các ký hiệu, tên và ví dụ −

Operator Example Same As
= a = 10 a = 10
+= a += 30 a = a + 30
-= a -= 15 a = a - 15
*= a *= 10 a = a * 10
/= a /= 5 a = a / 5
%= a %= 5 a = a % 5
**= a **= 4 a = a ** 4
//= a //= 5 a = a // 5
&= a &= 5 a = a & 5
|= a |= 5 a = a | 5
^= a ^= 5 a = a ^ 5
>>= a >>= 5 a = a >> 5
<<= a <<= 5 a = a << 5

Example of Python Assignment Operators

a = 21
b = 10
c = 0
print ("a: {} b: {} c : {}".format(a,b,c))
c = a + b
print ("a: {}  c = a + b: {}".format(a,c))

c += a
print ("a: {} c += a: {}".format(a,c))

c *= a
print ("a: {} c *= a: {}".format(a,c))

c /= a 
print ("a: {} c /= a : {}".format(a,c))

c  = 2
print ("a: {} b: {} c : {}".format(a,b,c))
c %= a
print ("a: {} c %= a: {}".format(a,c))

c **= a
print ("a: {} c **= a: {}".format(a,c))

c //= a
print ("a: {} c //= a: {}".format(a,c))

Output

a: 21 b: 10 c : 0
a: 21  c = a + b: 31
a: 21 c += a: 52
a: 21 c *= a: 1092
a: 21 c /= a : 52.0
a: 21 b: 10 c : 2
a: 21 c %= a: 2
a: 21 c **= a: 2097152
a: 21 c //= a: 99864

Python Bitwise Operators

Python Bitwise operator hoạt động trên các bit và thực hiện các phép toán từng bit một. Các toán tử này được sử dụng để so sánh các số nhị phân.

Bảng dưới đây chứa tất cả các toán tử bitwise với các ký hiệu, tên và ví dụ −

Operator Name Example
& AND a & b
| OR a | b
^ XOR a ^ b
~ NOT ~a
<< Zero fill left shift a << 3
>> Signed right shift a >> 3

Example of Python Bitwise Operators

a = 20            
b = 10            

print ('a=',a,':',bin(a),'b=',b,':',bin(b))
c = 0

c = a & b;        
print ("result of AND is ", c,':',bin(c))

c = a | b;     
print ("result of OR is ", c,':',bin(c))

c = a ^ b;        
print ("result of EXOR is ", c,':',bin(c))

c = ~a;           
print ("result of COMPLEMENT is ", c,':',bin(c))

c = a << 2;       
print ("result of LEFT SHIFT is ", c,':',bin(c))

c = a >> 2;       
print ("result of RIGHT SHIFT is ", c,':',bin(c))

Output

a= 20 : 0b10100 b= 10 : 0b1010
result of AND is  0 : 0b0
result of OR is  30 : 0b11110
result of EXOR is  30 : 0b11110
result of COMPLEMENT is  -21 : -0b10101
result of LEFT SHIFT is  80 : 0b1010000
result of RIGHT SHIFT is  5 : 0b101

Python Logical Operators

Python logical operators được sử dụng để kết hợp hai hoặc nhiều điều kiện và kiểm tra kết quả cuối cùng. Có các toán tử logic sau được hỗ trợ bởi ngôn ngữ Python. Giả sử biến a giữ giá trị 10 và biến b giữ giá trị 20 thì:

Bảng dưới đây chứa tất cả các toán tử logic với các ký hiệu, tên và ví dụ của chúng -

Operator Name Example
and AND a and b
or OR a or b
not NOT not(a)

Example of Python Logical Operators

var = 5

print(var > 3 and var < 10)
print(var > 3 or var < 4)
print(not (var > 3 and var < 10))

Output

True
True
False

Python Membership Operators

Kiểm tra membership operators của Python để kiểm tra thành viên trong một chuỗi, chẳng hạn như chuỗi, danh sách hoặc tuple.

Có hai toán tử thành viên như được giải thích dưới đây −

Operator Description Example
in Returns True if it finds a variable in the specified sequence, false otherwise. a in b
not in returns True if it does not finds a variable in the specified sequence and false otherwise. a not in b

Example of Python Membership Operators

a = 10
b = 20
list = [1, 2, 3, 4, 5 ]

print ("a:", a, "b:", b, "list:", list)

if ( a in list ):
   print ("a is present in the given list")
else:
   print ("a is not present in the given list")

if ( b not in list ):
   print ("b is not present in the given list")
else:
   print ("b is present in the given list")

c=b/a
print ("c:", c, "list:", list)
if ( c in list ):
   print ("c is available in the given list")
else:
    print ("c is not available in the given list")

Output

a: 10 b: 20 list: [1, 2, 3, 4, 5]
a is not present in the given list
b is not present in the given list
c: 2.0 list: [1, 2, 3, 4, 5]
c is available in the given list

Python Identity Operators

Python identity operators so sánh vị trí bộ nhớ của hai đối tượng.

Có hai toán tử danh tính được giải thích dưới đây −

Operator Description Example
is Returns True if both variables are the same object and false otherwise. a is b
is not Returns True if both variables are not the same object and false otherwise. a is not b

Example of Python Identity Operators

a = [1, 2, 3, 4, 5]
b = [1, 2, 3, 4, 5]
c = a

print(a is c)
print(a is b)

print(a is not c)
print(a is not b)

Output

True
False
False
True

Python Operators Precedence

Quy tắc ưu tiên của toán tử xác định thứ tự đánh giá mà một toán tử được đánh giá. Các toán tử trong Python có các mức độ ưu tiên khác nhau. Bảng dưới đây chứa danh sách các toán tử từ ưu tiên cao nhất đến thấp nhất:

Bảng dưới đây liệt kê tất cả các toán tử từ cao nhất precedence đến thấp nhất.

Sr.No. Operator & Description
1 ** Exponentiation (raise to the power)
2 ~ + - Complement, unary plus and minus (method names for the last two are +@ and -@)
3 * / % // Multiply, divide, modulo and floor division
4 + - Addition and subtraction
5 >> << Right and left bitwise shift
6 & Bitwise 'AND'
7 ^ | Bitwise exclusive `OR' and regular `OR'
8 <= < > >= Comparison operators
9 <> == != Equality operators
10 = %= /= //= -= += *= **= Assignment operators
11 is is not Identity operators
12 in not in Membership operators
13 not or and Logical operators

Đọc thêm về thứ tự ưu tiên của các toán tử Python tại đây: Python operators precedence