Phép toán chia số nguyên lấy phần dư trong nnlt python là:

Biểu thức trong Python là một tập hợp các toán hạng và các toán tử được sắp xếp theo thứ tự nhất định. Toán hạng ở đây chính là các biến số, hằng số, các tên hàm hoặc các con số cụ thể. Còn toán tử chính là các phép toán, gồm có phép gán giá trị, các phép toán số học, phép toán logic, phép so sánh hoặc các phép toán trên các kiểu dữ liệu đặc biệt. Ví dụ trong biểu thức sau

SIÊU SALE - SIÊU SALE

>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
8

SIÊU SALE - SIÊU SALE

thì

>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
9 là các toán hạng, còn
>>> a, b = b, a
0 là các toán tử.

SIÊU SALE - SIÊU SALE

Trong phần này, chúng ta chưa tìm hiểu sâu về các kiểu dữ liệu cơ bản của Python. Do đó, nếu có nói đến kiểu số thì bạn hiểu đó là các con số thông thường như số thực, số nguyên,… còn nếu nói đến dữ liệu kiểu xâu

>>> a, b = b, a
1 thì bạn hiểu đó chính là các chữ cái, các từ, các câu… được đặt trong cặp ngoặc nháy đơn, nháy kép.

SIÊU SALE - SIÊU SALE

Lưu ý rằng Python sử dụng dấu chấm để ngăn cách phần nguyên và phần thập phân, chẳng hạn số π có giá trị gần đúng là

>>> a, b = b, a
2

SIÊU SALE - SIÊU SALE

Tải ebook đầy đủ tại đây: 15 Cuốn sách học Python miễn phí

SIÊU SALE - SIÊU SALE

Xem thêm: 20 Bài tập Python cơ bản có lời giải

SIÊU SALE - SIÊU SALE

1. Phép gán giá trị trong Python

Khái niệm biến số, hằng số được hiểu giống như trong toán học, chúng ta sẽ không đi sâu vào các khái niệm này. Mỗi một biến, hằng đều mang một giá trị nào đó. Phép gán assignment được dùng để gán giá trị

>>> a, b = b, a
3 cho biến số hoặc hằng số có tên
>>> a, b = b, a
4, chúng ta sử dụng cú pháp:

SIÊU SALE - SIÊU SALE

>>> a, b = b, a
5

SIÊU SALE - SIÊU SALE

Ví dụ sau đây [thực hiện trực tiếp trên trình thông dịch Python] gán giá trị bằng

>>> a, b = b, a
6 vào biến có tên là
>>> a, b = b, a
7 và giá trị
>>> a, b = b, a
8 vào biến có tên là
>>> a, b = b, a
9. Sau đó thực hiện phép cộng số học
>>> a = b = c = 300
>>> print[a, b, c]
300 300 300
0. Ví dụ tiếp theo gán giá trị kiểu xâu str “
>>> a = b = c = 300
>>> print[a, b, c]
300 300 300
1” vào biến có tên là
>>> a = b = c = 300
>>> print[a, b, c]
300 300 300
2, giá trị “
>>> a = b = c = 300
>>> print[a, b, c]
300 300 300
3” vào biến có tên là
>>> a = b = c = 300
>>> print[a, b, c]
300 300 300
4 và thực hiện phép cộng hai xâu 
>>> a = b = c = 300
>>> print[a, b, c]
300 300 300
5

SIÊU SALE - SIÊU SALE
>>> a = 3
>>> pi = 3.14
>>> a + pi
6.140000000000000
>>> ho = "Phu"
>>> ten = "Ong"
>>> ho + ten
'PhuOng'

Chú ý cần phân biệt phép gán

>>> a = b = c = 300
>>> print[a, b, c]
300 300 300
6 với phép so sánh bằng nhau, so sánh đồng nhất
>>> a = b = c = 300
>>> print[a, b, c]
300 300 300
7.

SIÊU SALE - SIÊU SALE

Về biến số, ta có các khái niệm biến toàn cục và biến địa phương. Phần này sẽ thảo luận sau khi tìm hiểu về hàm

>>> a = b = c = 300
>>> print[a, b, c]
300 300 300
8 và lớp
>>> a = b = c = 300
>>> print[a, b, c]
300 300 300
9.

SIÊU SALE - SIÊU SALE

Chúng ta có thể gán đồng thời nhiều giá trị cho nhiều biến cùng một lúc, ta gọi là phép gán đa biến [multiple assignment], sử dụng cú pháp sau

SIÊU SALE - SIÊU SALE

>>> var = 23.5
>>> print[var]
23.5
>>> var = "Đây là một xâu này"
>>> print[var]
Đây là một xâu này
0

SIÊU SALE - SIÊU SALE

Chẳng hạn, hãy xem ví dụ sau

SIÊU SALE - SIÊU SALE
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'

Chính nhờ ưu điểm này, mà để hoán đổi giá trị của hai biến, ta có thể chỉ sử dụng một câu lệnh và cũng không cần phải sử dụng thêm các biến trung gian như các ngôn ngữ khác, chỉ đơn giản như sau

SIÊU SALE - SIÊU SALE
>>> a, b = b, a

Chúng ta cũng có thể gán một giá trị cho đồng thời nhiều biến

SIÊU SALE - SIÊU SALE
>>> a = b = c = 300
>>> print[a, b, c]
300 300 300

Kiểu dữ liệu của biến trong Python

Nhiều ngôn ngữ lập trình như C, Dart,…, sử dụng kiểu dữ liệu tĩnh [static], tức là một biến chỉ có thể nhận các giá trị của cùng một kiểu. Python thì trái lại, các biến trong Python có thể nhận mọi giá trị thuộc bất kì kiểu nào.

SIÊU SALE - SIÊU SALE
>>> var = 23.5
>>> print[var]
23.5
>>> var = "Đây là một xâu này"
>>> print[var]
Đây là một xâu này

Bài tập

Hãy tự đặt 10 tên biến khác nhau và sử dụng trình thông dịch Python để kiểm tra xem tên đó có hợp lệ không.

SIÊU SALE - SIÊU SALE

Gợi ý. Sử dụng phép gán để kiểm tra tên có hợp lệ không, nếu gán thành công là hợp lệ, ngược lại là không hợp lệ.

SIÊU SALE - SIÊU SALE

Ngoài phép gán trực tiếp như trên, chúng ta còn có thể kết hợp phép gán với các phép toán khác như trong bảng dưới đây:

SIÊU SALE - SIÊU SALEToán tửGiải thíchVí dụ
>>> var = 23.5
>>> print[var]
23.5
>>> var = "Đây là một xâu này"
>>> print[var]
Đây là một xâu này
1Cộng giá trị của toán hạng bên trái với toán hạng bên phải và gán kết quả vào toán hạng bên trái.
>>> var = 23.5
>>> print[var]
23.5
>>> var = "Đây là một xâu này"
>>> print[var]
Đây là một xâu này
2 tương đương với
>>> var = 23.5
>>> print[var]
23.5
>>> var = "Đây là một xâu này"
>>> print[var]
Đây là một xâu này
3
>>> var = 23.5
>>> print[var]
23.5
>>> var = "Đây là một xâu này"
>>> print[var]
Đây là một xâu này
4Trừ giá trị của toán hạng bên trái đi toán hạng bên phải rồi gán kết quả vào toán hạng bên trái.
>>> var = 23.5
>>> print[var]
23.5
>>> var = "Đây là một xâu này"
>>> print[var]
Đây là một xâu này
5 tương đương với
>>> var = 23.5
>>> print[var]
23.5
>>> var = "Đây là một xâu này"
>>> print[var]
Đây là một xâu này
6
>>> var = 23.5
>>> print[var]
23.5
>>> var = "Đây là một xâu này"
>>> print[var]
Đây là một xâu này
7Nhân giá trị của toán hạng bên trái với toán hạng bên phải rồi gán kết quả vào toán hạng bên trái.
>>> var = 23.5
>>> print[var]
23.5
>>> var = "Đây là một xâu này"
>>> print[var]
Đây là một xâu này
8 tương đương với
>>> var = 23.5
>>> print[var]
23.5
>>> var = "Đây là một xâu này"
>>> print[var]
Đây là một xâu này
9
>>> 1 + 2
3
>>> "Phu" + "Ong"
'PhuOng'
0Chia giá trị của toán hạng bên trái cho toán hạng bên phải rồi gán kết quả vào toán hạng bên trái.
>>> 1 + 2
3
>>> "Phu" + "Ong"
'PhuOng'
1 tương đương với
>>> 1 + 2
3
>>> "Phu" + "Ong"
'PhuOng'
2
>>> 1 + 2
3
>>> "Phu" + "Ong"
'PhuOng'
3Chia lấy dư toán hạng bên trái cho toán hạng bên phải rồi gán kết quả vào toán hạng bên trái.
>>> 1 + 2
3
>>> "Phu" + "Ong"
'PhuOng'
4 tương đương với
>>> 1 + 2
3
>>> "Phu" + "Ong"
'PhuOng'
5
>>> 1 + 2
3
>>> "Phu" + "Ong"
'PhuOng'
6Lũy thừa toán hạng bên trái với số mũ là toán hạng bên phải rồi gán kết quả vào toán hạng bên trái.
>>> 1 + 2
3
>>> "Phu" + "Ong"
'PhuOng'
7 tương đương với
>>> 1 + 2
3
>>> "Phu" + "Ong"
'PhuOng'
8
>>> 1 + 2
3
>>> "Phu" + "Ong"
'PhuOng'
9Chia lấy phần nguyên toán hạng bên trái cho toán hạng bên phải rồi gán kết quả vào toán hạng bên trái.
>>> 3 - 6
-3
0 tương đương với
>>> 3 - 6
-3
1

2. Phép toán số học trong Python

Python cung cấp các phép toán số học sau:

SIÊU SALE - SIÊU SALE
  • Phép cộng
    >>> 3 - 6
    -3
    2
    Tùy vào các toán hạng là kiểu số hay xâu mà phép cộng có tác dụng như phép cộng trong toán học, hoặc sẽ có tác dụng nối hai xâu
    >>> a, b = b, a
    1 lại với nhau [phép cộng xâu], hoặc phép lấy hợp hai tập hợp. Ví dụ:
>>> 1 + 2
3
>>> "Phu" + "Ong"
'PhuOng'
  • Phép trừ
    >>> 3 - 6
    -3
    4
    Phép trừ có tác dụng như phép trừ trong toán học, áp dụng cho kiểu số. Nếu áp dụng phép trừ cho các toán hạng kiểu tập hợp
    >>> 3 - 6
    -3
    5 thì ta có phép lấy hiệu hai tập hợp.
>>> 3 - 6
-3
  • Phép nhân
    >>> 3 - 6
    -3
    6
    Nếu cả hai toán hạng là kiểu số thì phép nhân có tác dụng như phép nhân trong toán học. Còn nếu một trong hai toán hạng là xâu
    >>> a, b = b, a
    1, toán hạng còn lại là một số nguyên dương
    >>> 3 - 6
    -3
    8 thì phép nhân sẽ có tác dụng lặp lại xâu
    >>> a, b = b, a
    1 đó thêm
    >>> 3 - 6
    -3
    8 lần.
>>> 2*3
6
>>> "Phu Ong"*3
'Phu OngPhu Ong Phu Ong'
>>> 3*"Phu Ong"
'Phu OngPhu Ong Phu Ong'
  • Phép chia
    >>> 2*3
    6
    >>> "Phu Ong"*3
    'Phu OngPhu Ong Phu Ong'
    >>> 3*"Phu Ong"
    'Phu OngPhu Ong Phu Ong'
    1
    Phép chia áp dụng cho kiểu số. Nếu các toán hạng là số thực hoặc số nguyên thì kết quả trả về luôn là số thực. Lưu ý, trong Python 2 thì phép chia này có tác dụng như phép chia lấy phần nguyên. Khi đó, muốn kết quả là một số thực bạn phải ép kiểu một trong hai toán hạng sang kiểu số thực
    >>> 2*3
    6
    >>> "Phu Ong"*3
    'Phu OngPhu Ong Phu Ong'
    >>> 3*"Phu Ong"
    'Phu OngPhu Ong Phu Ong'
    2, chẳng hạn thay vì viết
    >>> 2*3
    6
    >>> "Phu Ong"*3
    'Phu OngPhu Ong Phu Ong'
    >>> 3*"Phu Ong"
    'Phu OngPhu Ong Phu Ong'
    3 bạn phải viết
    >>> 2*3
    6
    >>> "Phu Ong"*3
    'Phu OngPhu Ong Phu Ong'
    >>> 3*"Phu Ong"
    'Phu OngPhu Ong Phu Ong'
    4 hoặc
    >>> 2*3
    6
    >>> "Phu Ong"*3
    'Phu OngPhu Ong Phu Ong'
    >>> 3*"Phu Ong"
    'Phu OngPhu Ong Phu Ong'
    5
>>> 1/2
0.5
>>> 1/7
0.14285714285714285
  • Phép chia lấy phần nguyên
    >>> 2*3
    6
    >>> "Phu Ong"*3
    'Phu OngPhu Ong Phu Ong'
    >>> 3*"Phu Ong"
    'Phu OngPhu Ong Phu Ong'
    6
    Phép chia
    >>> 2*3
    6
    >>> "Phu Ong"*3
    'Phu OngPhu Ong Phu Ong'
    >>> 3*"Phu Ong"
    'Phu OngPhu Ong Phu Ong'
    6 này tương ứng với phép toán
    >>> 2*3
    6
    >>> "Phu Ong"*3
    'Phu OngPhu Ong Phu Ong'
    >>> 3*"Phu Ong"
    'Phu OngPhu Ong Phu Ong'
    8 trong toán học và các ngôn ngữ khác. Khi chia số nguyên
    >>> a, b = b, a
    7 cho số nguyên
    >>> 1/2
    0.5
    >>> 1/7
    0.14285714285714285
    0 ta được thương là
    >>> 1/2
    0.5
    >>> 1/7
    0.14285714285714285
    1 và số dư là
    >>> 1/2
    0.5
    >>> 1/7
    0.14285714285714285
    2.

>>> 1/2
0.5
>>> 1/7
0.14285714285714285
3

SIÊU SALE - SIÊU SALE

Kết quả của phép chia

>>> 2*3
6
>>> "Phu Ong"*3
'Phu OngPhu Ong Phu Ong'
>>> 3*"Phu Ong"
'Phu OngPhu Ong Phu Ong'
6 này chính là thương
>>> 1/2
0.5
>>> 1/7
0.14285714285714285
1 trong định nghĩa trên.

SIÊU SALE - SIÊU SALE
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
  • Phép chia lấy phần dư
    >>> 1/2
    0.5
    >>> 1/7
    0.14285714285714285
    6

Khi chia số nguyên

>>> a, b = b, a
7 cho số nguyên
>>> 1/2
0.5
>>> 1/7
0.14285714285714285
0 ta được thương là
>>> 1/2
0.5
>>> 1/7
0.14285714285714285
1 và số dư là
>>> 1/2
0.5
>>> 1/7
0.14285714285714285
2. Thì kết quả của phép chia lấy dư
>>> 1/2
0.5
>>> 1/7
0.14285714285714285
6 chính là số
>>> 1/2
0.5
>>> 1/7
0.14285714285714285
2 trong biểu thức đã nêu ở phần trước.

SIÊU SALE - SIÊU SALE
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
0
  • Phép lũy thừa
    >>> 12//4
    3
    >>> 13//4
    3
    >>> 15//4
    3
    3

Đây chính là phép tính lũy thừa trong toán học,

>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
4 trả về kết quả là ab.

SIÊU SALE - SIÊU SALE
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
1

Chú ý,

>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
5 trong Python không phải là phép tính lũy thừa hoặc mũ, mà là phép toán dịch chuyển bit, xem phần sau để rõ hơn.

SIÊU SALE - SIÊU SALE

Bài tập

Sử dụng trình thông dịch Python và các phép toán số học để kiểm tra xem năm 2017 có là năm nhuận hay không.

SIÊU SALE - SIÊU SALE

3. Phép toán logic

Phép toán logic làm việc trên các toán tử logic, tức là các biến, biểu thức chỉ có hai khả năng đúng

>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6 hoặc sai
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7. Xin xem kiểu dữ liệu logic
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
8 để hiểu rõ. Python cung cấp các phép toán logic
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
9.

SIÊU SALE - SIÊU SALE
  • Phép toán
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    00 sẽ trả về kết quả
    >>> 12//4
    3
    >>> 13//4
    3
    >>> 15//4
    3
    6 nếu cả hai toán hạng đều là
    >>> 12//4
    3
    >>> 13//4
    3
    >>> 15//4
    3
    6. Bảng giá trị chân lý của phép toán and như sau:
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
03
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
04
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
05
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
  • Phép toán
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    18 sẽ trả về kết quả
    >>> 12//4
    3
    >>> 13//4
    3
    >>> 15//4
    3
    6 nếu một trong hai toán hạng là
    >>> 12//4
    3
    >>> 13//4
    3
    >>> 15//4
    3
    6. Bảng giá trị chân lý của phép toán or như sau:
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
03
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
04
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
23
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
  • Phép toán
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    36 được sử dụng để đảo ngược giá trị chân lý của một biểu thức. Bảng giả trị chân lý của phép toán not như sau:
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
03
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
38
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6

Sau đây là một vài ví dụ minh họa, tất cả đều chạy trực tiếp trong trình thông dịch của Python.

SIÊU SALE - SIÊU SALE
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
2

4. Phép toán so sánh trong Python

Kết quả trả về của một phép toán so sánh là

>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6 [đúng] hoặc
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7 [sai], hai giá trị này thuộc kiểu dữ liệu logic
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
8. Python cung cấp các phép toán so sánh sau đây:

SIÊU SALE - SIÊU SALE
  • So sánh đồng nhất [giống nhau, bằng nhau]
    >>> a = b = c = 300
    >>> print[a, b, c]
    300 300 300
    7 Cần chú ý rằng phép so sánh đồng nhất khác với phép toán
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    47
  • So sánh lớn hơn
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    48
  • So sánh lớn hơn hoặc bằng
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    49
  • So sánh nhỏ hơn
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    50
  • So sánh nhỏ hơn hoặc bằng
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    51
  • So sánh không bằng [khác nhau]
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    52

Giả sử biến

>>> a, b = b, a
7 có giá trị
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
54 và biến
>>> 1/2
0.5
>>> 1/7
0.14285714285714285
0 có giá trị
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
56, thì:

SIÊU SALE - SIÊU SALEToán tửGiải thíchThí dụ
>>> a = b = c = 300
>>> print[a, b, c]
300 300 300
7Nếu giá trị của hai toán hạng bằng nhau thì trả về kết quả
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
59 có kết quả
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
52Nếu giá trị của hai toán hạng không bằng nhau thì trả về kết quả
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
63 có kết quả
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
48Nếu giá trị của toán hạng bên trái lớn hơn giá trị của toán hạng bên phải, thì trả về kết quả
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
67 có kết quả
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
50Nếu giá trị của toán hạng bên trái nhỏ hơn giá trị của toán hạng bên phải, thì trả về kết quả
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
71 có kết quả
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
49Nếu giá trị của toán hạng bên trái lớn hơn hoặc bằng giá trị của toán hạng bên phải, thì trả về kết quả
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
75 có kết quả
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
7
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
51Nếu giá trị của toán hạng bên trái nhỏ hơn hoặc bằng giá trị của toán hạng bên phải, thì trả về kết quả
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
79 có kết quả
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6

 5. Phép toán thao tác bit

Thông thường, trong cuộc sống chúng ta sử dụng hệ đếm thâp phân, cơ số 10 gồm các 10 chữ số từ 0 đến 9. Nhưng để biểu diễn thông tin trong máy tính, chúng ta sử dụng các bóng bán dẫn, chỉ có hai trạng thái bật hoặc tắt, tương ứng với hai giá trị 1 và 0 của hệ đếm cơ số 2, tức hệ nhị phân.

SIÊU SALE - SIÊU SALE

Theo wiki thì “Các phép toán trên thao tác bit [bitwise operation] được thực hiện trên một hoặc nhiều chuỗi bit hoặc số nhị phân tại cấp độ của từng bit riêng biệt. Các phép toán này được thực hiện nhanh, ưu tiên, được hỗ trợ trực tiếp bởi vi xử lý, và được dùng để điều khiển các giá trị dùng cho so sánh và tính toán. Đối với các loại vi xử lý rẻ tiền, thường thì các phép toán trên thao tác bit nhanh hơn phép chia đáng kể, đôi khi nhanh hơn phép nhân, và đôi khi nhanh hơn phép cộng đáng kể. Trong khi các vi xử lý hiện đại thường thực hiện phép nhân và phép cộng nhanh tương đương các phép toán trên thao tác bit nhờ vào cấu trúc đường ống lệnh của chúng dài hơn và cũng nhờ vào các lựa chọn trong thiết kế cấu trúc, các phép toán trên thao tác bit thường sử dụng ít năng lượng hơn vì sử dụng ít tài nguyên hơn.”

SIÊU SALE - SIÊU SALE

Tuy nhiên, trong Python chúng ta ít khi sử dụng các phép toán thao tác trên bit. Chẳng hạn xét trong hệ nhị phân

>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
81 và
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
82 thì kết quả của một số phép toán như sau:

SIÊU SALE - SIÊU SALE
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
3

Để chuyển một số sang hệ nhị phân, chúng ta dùng hàm

>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
83, chẳng hạn với
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
84 và
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
85

SIÊU SALE - SIÊU SALE
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
4

Chúng ta có các phép toán chuyển đổi bit như sau:

SIÊU SALE - SIÊU SALE
  • Phép nghịch đảo
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    86 có tác dụng đổi các bit từ
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    87 sang
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    88 và ngược lại.
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
5
  • Phép dịch chuyển bit. Xét dãy bit
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    89 khi dịch sang trái sẽ được
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    90, còn dịch sang phải sẽ được
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    91. Phép dịch bit sang trái còn mang ý nghĩa là nhân một số cho
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    92, còn dịch sang phải mang ý nghĩa chia một số cho
    >>> a, b = 10, 5
    >>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
    92. 
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
6

6. Các phép toán membership

Các phép toán chính là phép kiểm tra một phần tử có thuộc/không thuộc tập [set, List…] nào đó hay không.

SIÊU SALE - SIÊU SALEToán tửMô tả
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
94Trả về
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6 nếu một [nhiều] phần tử thuộc tập hợp, chuỗi cần kiểm tra.
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
96Trae về
>>> 12//4
3
>>> 13//4
3
>>> 15//4
3
6 nếu một [nhiều] phần tử có trong tập, chuỗi cần kiểm tra.
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
7

Phép toán kiểm tra

>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
94 còn được sử dụng trong vòng lặp
>>> a, b = 10, 5
>>> ten, tuoi, sdt = 'Phu Ong', 31, '0123456789'
99. Xin mời xem chi tiết tại Bài 6. Câu lệnh vòng lặp for trong Python

SIÊU SALE - SIÊU SALE

Ngoài ra, còn có các phép toán trên tập hợp, xin mời các bạn xem thêm trong bài Kiểu dữ liệu tập hợp

>>> 3 - 6
-3
5 trong Python.

SIÊU SALE - SIÊU SALE

7. Thứ tự ưu tiên các phép toán

Khi thực hiện một câu lệnh Python, các phép toán được thực hiện theo một thứ tự nhất định. Thứ tự ưu tiên các phép toán, lần lượt từ ưu tiên cao xuống thấp, trong Python như sau:

SIÊU SALE - SIÊU SALEToán tửGiải thích
>>> a, b = b, a
01,SIÊU SALE - SIÊU SALE

>>> a, b = b, a
02, 
>>> a, b = b, a
03, 
>>> a, b = b, a
04

Các nhóm biểu thức trong ngoặc đơn, biểu thức trong các phần tử của danh sách, từ điển, tập hợp.
>>> a, b = b, a
05, 
>>> a, b = b, a
06, 
>>> a, b = b, a
07, 
>>> a, b = b, a
08Phép truy cập phần tư, cắt khoảng phần tử và lời gọi đến các phương thức, thuộc tính
>>> a, b = b, a
09 
>>> a, b = b, a
10Biểu thức
>>> a, b = b, a
11
>>> a, b = b, a
12Phép lũy thừa
>>> a, b = b, a
13, 
>>> a, b = b, a
14, 
>>> a, b = b, a
15Phép cộng thêm, trừ bớt, phép lấy số đối và phép toán bitwise NOT
>>> a, b = b, a
16, 
>>> a, b = b, a
17, 
>>> a, b = b, a
18, 
>>> a, b = b, a
19, 
>>> a, b = b, a
20Phép nhân, phép nhân ma trận, phép chia, chia lấy phần nguyên, chia lấy phần dư
>>> a, b = b, a
21, 
>>> a, b = b, a
22Phép cộng, phép trừ
>>> a, b = b, a
23, 
>>> a, b = b, a
24Phép dịch bit
>>> a, b = b, a
25Phép toán bitwise AND
>>> a, b = b, a
26Phép toán bitwise XOR
>>> a, b = b, a
27Phép toán bitwise OR
>>> a, b = b, a
28, 
>>> a, b = b, a
29, 
>>> a, b = b, a
30, 
>>> a, b = b, a
31, 
>>> a, b = b, a
32, 
>>> a, b = b, a
33, 
>>> a, b = b, a
34, 
>>> a, b = b, a
35, 
>>> a, b = b, a
36, 
>>> a, b = b, a
37Phép toán so sánh, kiểm tra thành viên…
>>> a, b = b, a
38 
>>> a, b = b, a
10Phép toán logic NOT
>>> a, b = b, a
40Phép toán logic AND
>>> a, b = b, a
41Phép toán logic OR
>>> a, b = b, a
42 – 
>>> a, b = b, a
43Câu lệnh điều kiện được thực hiện sau khi các biểu thức điều kiện của nó thực hiện xong
>>> a, b = b, a
44Hàm nặc danh
>>> a, b = b, a
45Phép gán

Trong bảng trên, nằm cùng hàng với nhau có mức độ ưu tiên bằng nhau, khi đó chúng sẽ được thực hiện lần lượt từ trái qua phải.

Chủ Đề