Trong hướng dẫn này, bạn sẽ tìm hiểu mọi thứ về các loại toán tử khác nhau trong Python, cú pháp của chúng và cách sử dụng chúng với các ví dụ.
Video: Các toán tử trong Python
Toán tử trong python là gì?
Toán tử là các ký hiệu đặc biệt trong Python để thực hiện tính toán số học hoặc logic. Giá trị mà toán tử hoạt động được gọi là toán hạng.
Ví dụ:
>>> 2+3 5
Đây, +
là toán tử thực hiện phép cộng. 2
và 3
là các toán hạng và 5
là đầu ra của hoạt động.
Toán tử số học
Toán tử số học được sử dụng để thực hiện các phép toán như cộng, trừ, nhân, v.v.
Nhà điều hành | Ý nghĩa | Thí dụ |
---|---|---|
+ | Thêm hai toán hạng hoặc cộng một bậc | x + y + 2 |
- | Trừ toán hạng bên phải khỏi số trừ bên trái hoặc một ngôi | x - y- 2 |
* | Nhân hai toán hạng | x * y |
/ | Chia toán hạng bên trái cho toán hạng bên phải (luôn cho kết quả là float) | x / y |
% | Mô đun - phần còn lại của phép chia toán hạng bên trái cho bên phải | x% y (phần còn lại của x / y) |
// | Phân chia tầng - phép chia kết quả thành số nguyên được điều chỉnh ở bên trái trong dòng số | x // y |
** | Số mũ - toán hạng bên trái nâng lên lũy thừa bên phải | x ** y (x theo lũy thừa y) |
Ví dụ 1: Các toán tử số học trong Python
x = 15 y = 4 # Output: x + y = 19 print('x + y =',x+y) # Output: x - y = 11 print('x - y =',x-y) # Output: x * y = 60 print('x * y =',x*y) # Output: x / y = 3.75 print('x / y =',x/y) # Output: x // y = 3 print('x // y =',x//y) # Output: x ** y = 50625 print('x ** y =',x**y)
Đầu ra
x + y = 19 x - y = 11 x * y = 60 x / y = 3,75 x // y = 3 x ** y = 50625
Toán tử so sánh
Toán tử so sánh được sử dụng để so sánh các giá trị. Nó trả về một trong hai True
hoặc False
tùy theo điều kiện.
Nhà điều hành | Ý nghĩa | Thí dụ |
---|---|---|
> | Lớn hơn - Đúng nếu toán hạng bên trái lớn hơn bên phải | x> y |
< | Nhỏ hơn - Đúng nếu toán hạng bên trái nhỏ hơn bên phải | x <y |
== | Bằng - Đúng nếu cả hai toán hạng bằng nhau | x == y |
! = | Không bằng - Đúng nếu các toán hạng không bằng | x! = y |
> = | Lớn hơn hoặc bằng - Đúng nếu toán hạng bên trái lớn hơn hoặc bằng bên phải | x> = y |
<= | Nhỏ hơn hoặc bằng - Đúng nếu toán hạng bên trái nhỏ hơn hoặc bằng bên phải | x <= y |
Ví dụ 2: Các toán tử so sánh trong Python
x = 10 y = 12 # Output: x> y is False print('x> y is',x>y) # Output: x < y is True print('x < y is',x= y is False print('x>= y is',x>=y) # Output: x <= y is True print('x <= y is',x<=y)
Đầu ra
x> y là Sai x = y là Sai x <= y là Đúng
Toán tử logic
Khai thác hợp lý là and
, or
, not
nhà khai thác.
Nhà điều hành | Ý nghĩa | Thí dụ |
---|---|---|
và | Đúng nếu cả hai toán hạng đều đúng | x và y |
hoặc là | Đúng nếu một trong các toán hạng là đúng | x hoặc y |
không phải | Đúng nếu toán hạng sai (bổ sung cho toán hạng) | không phải x |
Ví dụ 3: Các toán tử logic trong Python
x = True y = False print('x and y is',x and y) print('x or y is',x or y) print('not x is',not x)
Đầu ra
x và y là Sai hoặc y là Đúng, không phải x là Sai
Đây là bảng sự thật cho các toán tử này.
Toán tử bitwise
Các toán tử bitwise hoạt động trên các toán hạng như thể chúng là chuỗi các chữ số nhị phân. Chúng hoạt động từng chút một, do đó có tên.
Ví dụ: 2 10
ở dạng nhị phân và 7 là 111
.
Trong bảng dưới đây: Cho x = 10 ( 0000 1010
trong hệ nhị phân) và y = 4 ( 0000 0100
trong hệ nhị phân)
Nhà điều hành | Ý nghĩa | Thí dụ |
---|---|---|
& | Bitwise VÀ | x & y = 0 ( 0000 0000 ) |
| | Bitwise HOẶC | x | y = 14 ( 0000 1110 ) |
~ | Bitwise KHÔNG | ~ x = -11 ( 1111 0101 ) |
^ | Bitwise XOR | x y = 14 ( 0000 1110 ) |
>> | Dịch chuyển sang phải bitwise | x >> 2 = 2 ( 0000 0010 ) |
<< | Dịch trái bitwise | x << 2 = 40 (0010 1000 ) |
Assignment operators
Assignment operators are used in Python to assign values to variables.
a = 5
is a simple assignment operator that assigns the value 5 on the right to the variable a on the left.
There are various compound operators in Python like a += 5
that adds to the variable and later assigns the same. It is equivalent to a = a + 5
.
Operator | Example | Equivalent to |
---|---|---|
= | x = 5 | x = 5 |
+= | x += 5 | x = x + 5 |
-= | x -= 5 | x = x - 5 |
*= | x *= 5 | x = x * 5 |
/= | x /= 5 | x = x / 5 |
%= | x %= 5 | x = x % 5 |
//= | x //= 5 | x = x // 5 |
**= | x **= 5 | x = x ** 5 |
&= | x &= 5 | x = x & 5 |
|= | x |= 5 | x = x | 5 |
^= | x ^= 5 | x = x 5 |
>>= | x>>= 5 | x = x>> 5 |
<<= | x <<= 5 | x = x << 5 |
Special operators
Python language offers some special types of operators like the identity operator or the membership operator. They are described below with examples.
Identity operators
is
and is not
are the identity operators in Python. They are used to check if two values (or variables) are located on the same part of the memory. Two variables that are equal does not imply that they are identical.
Operator | Meaning | Example |
---|---|---|
is | True if the operands are identical (refer to the same object) | x is True |
is not | True if the operands are not identical (do not refer to the same object) | x is not True |
Example 4: Identity operators in Python
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)
Output
False True False
Here, we see that x1 and y1 are integers of the same values, so they are equal as well as identical. Same is the case with x2 and y2 (strings).
But x3 and y3 are lists. They are equal but not identical. It is because the interpreter locates them separately in memory although they are equal.
Membership operators
in
và not in
là các toán tử thành viên trong Python. Chúng được sử dụng để kiểm tra xem một giá trị hoặc biến có được tìm thấy trong một chuỗi hay không (chuỗi, danh sách, bộ, bộ và từ điển).
Trong từ điển, chúng tôi chỉ có thể kiểm tra sự hiện diện của khóa chứ không phải giá trị.
Nhà điều hành | Ý nghĩa | Thí dụ |
---|---|---|
trong | Đúng nếu giá trị / biến được tìm thấy trong chuỗi | 5 trong x |
không có trong | Đúng nếu giá trị / biến không được tìm thấy trong chuỗi | 5 không trong x |
Ví dụ # 5: Toán tử tư cách thành viên trong Python
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)
Đầu ra
Đúng Đúng Đúng Sai
Ở đây, 'H'
có trong x nhưng 'hello'
không có trong x (hãy nhớ rằng Python phân biệt chữ hoa và chữ thường). Tương tự, 1
là khóa và 'a'
là giá trị trong từ điển y. Do đó, 'a' in y
lợi nhuận False
.