Làm thế nào để bạn chia một số nguyên và int trong python?

Trong bài viết này, bạn sẽ tìm hiểu về các toán tử chia

3
1 và
3
2 trong Python 2 và 3. Bạn có thể kiểm tra phiên bản trong tập lệnh Python của mình như được hiển thị tại đây

Tổng quan trực quan ngắn gọn về toán tử chia trong Python 2 và 3

Làm thế nào để bạn chia một số nguyên và int trong python?
Nhân vật. Sự khác biệt và tương đồng của các toán tử chia trong Python 2 và 3

Giả sử hai giá trị số nguyên được lưu trữ trong các biến

3
3 và
3
0, có bốn trường hợp khác nhau tùy thuộc vào phiên bản Python và toán tử chia mà bạn sử dụng

  • Trăn 2. Toán tử dấu gạch chéo trước duy nhất
    3
    1 thực hiện phép chia số nguyên
  • Trăn 2. Toán tử dấu gạch chéo kép phía trước
    3
    2 thực hiện phép chia số nguyên
  • Trăn 3. Toán tử gạch chéo đơn phía trước
    3
    1 thực hiện phép chia float
  • Trăn 3. Toán tử dấu gạch chéo kép phía trước
    3
    2 thực hiện phép chia số nguyên

Hãy đi sâu hơn vào những trường hợp này với một số ví dụ tiếp theo

Làm cách nào để chia hai số nguyên trong Python 2?

Đối với Python 2, phép chia hai số nguyên sử dụng phép chia số nguyên. Cái này còn được gọi là “chia tầng” vì nó áp dụng hàm tầng sau khi chia. Ví dụ:

3
5 trong Python 2. x sẽ dẫn đến giá trị 3. Tuy nhiên, việc sử dụng “/” không được dùng nữa — để thực hiện phân chia tầng, hãy sử dụng “//” có sẵn trong Python 2. 2 và các phiên bản mới hơn

# Python 2.x
print(7/2)

đầu ra

3

Phân chia float trong Python 2

Để thực hiện phép chia float trong Python 2, hãy sử dụng câu lệnh

3
6 và sử dụng dấu gạch chéo trước duy nhất
3
1 để thực hiện phép chia float như trong Python 3. Ví dụ:
3
5 bây giờ sẽ dẫn đến
3
9

3
2

Ngoài ra, bạn có thể nhân với số float 1. 0 để “lây nhiễm” tử số sao cho một trong các toán hạng của toán tử chia là giá trị float và toàn bộ phép chia cũng trở thành phép chia float

3
3

Ngoài ra, bạn có thể sử dụng hàm tích hợp float() trên tử số hoặc mẫu số để thực hiện phép chia float

3
4

Làm cách nào để chia hai số nguyên trong Python 3?

Đối với Python 3, chia hai số nguyên bằng phép chia float thông thường. Ví dụ:

3
5 trong Python 3. x sẽ dẫn đến giá trị dấu phẩy động
3
9

3
7

đầu ra

3
8

Bạn có thể đọc thêm các cuộc thảo luận về điều này tại đây

Bản tóm tắt

Một bài học rất quan trọng trong Python để học lại từ đầu là “Phép chia trong Python”. Ý nghĩa của phép chia trong Python và cách sử dụng khác nhau của các đối số hoặc toán tử Python. Nhiều người không học được những khác biệt tinh tế này. Khi họ không học, họ sẽ mất hàng giờ và hàng ngày để gỡ lỗi chương trình

Bạn có thể sử dụng phép chia theo hai cách khác nhau

  • Phép chia số nguyên lấy hai số và chia chúng để có kết quả là một số nguyên. Trong Python 3, phép chia số nguyên (hoặc phép chia sàn) sử dụng toán tử
    3
    1 dấu gạch chéo kép phía trước. Trong Python 2, phép chia số nguyên sử dụng toán tử
    3
    2 có dấu gạch chéo trước
  • Phép chia float lấy hai số và chia chúng và cho kết quả là một giá trị thập phân. Trong Python 3, việc sử dụng phép chia thông thường sử dụng dấu gạch chéo trước / toán tử. Toán tử này sẽ dẫn đến một giá trị thập phân

Bạn có thể tìm hiểu thêm về phép chia trong Python tại đây

Làm thế nào để bạn chia một số nguyên và int trong python?

Chris

Trong khi làm việc với tư cách là một nhà nghiên cứu trong các hệ thống phân tán, Dr. Christian Mayer tìm thấy tình yêu của mình với việc dạy sinh viên khoa học máy tính

Để giúp sinh viên đạt được mức độ thành công Python cao hơn, anh ấy đã thành lập trang web giáo dục lập trình Finxter. com. Ông là tác giả của cuốn sách lập trình nổi tiếng Python One-Liners (NoStarch 2020), đồng tác giả của loạt sách tự xuất bản Coffee Break Python, người đam mê khoa học máy tính, cộng tác viên tự do và chủ sở hữu của một trong 10 blog Python lớn nhất thế giới

Niềm đam mê của anh ấy là viết, đọc và mã hóa. Nhưng niềm đam mê lớn nhất của anh ấy là phục vụ các lập trình viên đầy tham vọng thông qua Finxter và giúp họ nâng cao kỹ năng của mình. Bạn có thể tham gia học viện email miễn phí của anh ấy tại đây

Ký hiệu chia tiêu chuẩn (

3
2) hoạt động khác nhau trong Python 3 và Python 2 khi áp dụng cho số nguyên

Khi chia một số nguyên cho một số nguyên khác trong Python 3, phép chia

3
7 đại diện cho một phép chia thực (sử dụng phương thức
3
8) và tạo ra kết quả dấu phẩy động. Trong khi đó, phép toán tương tự trong Python 2 đại diện cho một phép chia cổ điển làm tròn kết quả xuống âm vô cực (còn được gọi là lấy giá trị sàn)

Ví dụ

Đầu ra CodePython 2 Đầu ra Python 3
3
911. 5____4000. 6666666666666666____41-2-1. 5

Hành vi làm tròn về 0 không được dùng trong Python 2. 2, nhưng vẫn còn trong Python 2. 7 vì mục đích tương thích ngược và đã bị xóa trong Python 3

Ghi chú. Để có kết quả float trong Python 2 (không làm tròn sàn), chúng ta có thể chỉ định một trong các toán hạng có dấu thập phân. Ví dụ trên của

3
2 cung cấp cho
3
3 trong Python 2 sẽ được sử dụng như
3
90 hoặc
3
91 hoặc
3
92 để nhận được
3
93

Đầu ra CodePython 2 Đầu ra Python 3
3
941. 51. 5____1900. 66666666666666660. 6666666666666666____196-1. 5-1. 5

Ngoài ra còn có toán tử chia tầng (

3
97), hoạt động giống nhau trong cả hai phiên bản. nó làm tròn xuống số nguyên gần nhất. (mặc dù số float được trả về khi được sử dụng với số float) Trong cả hai phiên bản, toán tử
3
97 ánh xạ tới
3
99

Đầu ra CodePython 2 Đầu ra Python 3
3
2011
3
2100
3
22-2-2
3
231. 01. 0____3240. 00. 0____325-2. 0-2. 0

Người ta có thể thực thi rõ ràng phép chia thực hoặc phép chia tầng bằng cách sử dụng các hàm gốc trong mô-đun

3
26

3
9

Mặc dù rõ ràng và rõ ràng, nhưng việc sử dụng các hàm toán tử cho mọi phép chia có thể rất tẻ nhạt. Thay đổi hành vi của toán tử

3
2 thường sẽ được ưu tiên hơn. Một thực tế phổ biến là loại bỏ hành vi phân chia điển hình bằng cách thêm
3
28 làm câu lệnh đầu tiên trong mỗi mô-đun

3
9Đầu ra CodePython 2 Đầu ra Python 3
3
91. 51. 5____400. 66666666666666660. 6666666666666666____41-1. 5-1. 5

3
28 đảm bảo rằng toán tử
3
2 đại diện cho phép chia thực sự và chỉ trong các mô-đun chứa nhập khẩu
3
74, vì vậy không có lý do thuyết phục nào để không kích hoạt nó trong tất cả các mô-đun mới

Ghi chú. Một số ngôn ngữ lập trình khác sử dụng làm tròn về 0 (cắt ngắn) thay vì làm tròn xuống âm vô cùng như Python (i. e. bằng những ngôn ngữ đó

3
75). Hành vi này có thể gây nhầm lẫn khi chuyển hoặc so sánh mã


Lưu ý về toán hạng float. Để thay thế cho

3
28, người ta có thể sử dụng ký hiệu chia thông thường
3
2 và đảm bảo rằng ít nhất một trong các toán hạng là số float.
3
78. Tuy nhiên, điều này có thể được coi là thực hành xấu. Thật quá dễ dàng để viết
3
79 và quên bỏ một trong các đối số để float. Hơn nữa, những trường hợp như vậy có thể thường xuyên trốn tránh thông báo trong quá trình thử nghiệm, e. g. , nếu bạn thử nghiệm trên một mảng chứa các
3
80 nhưng nhận được một mảng gồm các
3
81 trong quá trình sản xuất. Ngoài ra, nếu mã tương tự được sử dụng trong Python 3, các chương trình mong đợi
3
82 là True sẽ không hoạt động chính xác

Xem PEP 238 để biết lý do chi tiết hơn tại sao toán tử chia được thay đổi trong Python 3 và tại sao nên tránh chia kiểu cũ

Điều gì xảy ra khi bạn chia hai số nguyên trong Python?

Đối với Python 2, phép chia hai số nguyên sử dụng phép chia số nguyên . Cái này còn được gọi là “chia tầng” vì nó áp dụng hàm tầng sau khi chia. Ví dụ: 7/2 trong Python 2. x sẽ dẫn đến giá trị 3.

Python có hỗ trợ phép chia số nguyên không?

Trong Python, có hai kiểu phân chia. phép chia số nguyên và phép chia float . Phép chia số nguyên trả về sàn của phép chia. Nghĩa là, các giá trị sau dấu thập phân bị loại bỏ.

Điều gì xảy ra khi bạn chia một số nguyên cho một số nguyên?

Khi một số nguyên được chia cho một số nguyên khác, thì nó thỏa mãn thuật toán chia có nội dung ' cổ tức = số chia × thương + số dư '. Khi một số nguyên chia cho 1, kết quả luôn là chính số nguyên đó. Ví dụ: -5 ÷ 1 = -5.