Hướng dẫn what is the difference between single division and double division in python? - sự khác biệt giữa phân chia đơn và phân chia đôi trong python là gì?

Chương này là từ cuốn sách 

2.4 Người vận hành

Các toán tử toán học tiêu chuẩn mà bạn đã quen thuộc với công việc giống nhau trong Python như trong hầu hết các ngôn ngữ khác.

+       -        *      /       //      %      **

Ngoài ra, phép trừ, nhân, chia và mô đun (phần còn lại) đều là một phần của bộ toán tử tiêu chuẩn. Python có hai nhà khai thác phân chia, một nhân vật chém duy nhất cho bộ phận cổ điển và một cú đánh đôi cho bộ phận của tầng sàn (làm tròn xuống tổng số gần nhất). Phân chia cổ điển có nghĩa là nếu cả hai toán hạng là cả số nguyên, nó sẽ thực hiện phân chia sàn, trong khi đối với số điểm nổi, nó đại diện cho sự phân chia thực sự. Nếu True Division được bật, thì toán tử phân chia sẽ luôn thực hiện thao tác đó, bất kể các loại toán hạng. Bạn có thể đọc thêm về phân chia cổ điển, chân thật và sàn trong Chương 5, Số.

Ngoài ra còn có một toán tử số liệu, sao đôi/dấu hoa thị (**). Mặc dù chúng tôi đang nhấn mạnh bản chất toán học của các toán tử này, xin lưu ý rằng một số nhà khai thác này cũng bị quá tải để sử dụng với các loại dữ liệu khác, ví dụ, chuỗi và danh sách. Chúng ta hãy xem xét một ví dụ:

>>> print -2 * 4 + 3 ** 2
1

Như bạn có thể thấy, người vận hành ưu tiên là những gì bạn mong đợi: + và - nằm ở phía dưới, theo sau là *, /, // và %; Sau đó đến Unary + và -, và cuối cùng, chúng ta có ** ở trên cùng. ((3 ** 2) được tính toán đầu tiên, tiếp theo là (-2 * 4), sau đó cả hai kết quả được tổng hợp lại với nhau.)

Python cũng cung cấp các toán tử so sánh tiêu chuẩn, trả về giá trị boolean cho thấy tính trung thực của biểu thức:

<    <=   >    >=   ==      !=      <>

Thử một số toán tử so sánh chúng tôi nhận được:

>>> 2 < 4
True
>>> 2 == 4
False
>>> 2 > 4
False
>>> 6.2 <= 6
False
>>> 6.2 <= 6.2
True
>>> 6.2 <= 6.20001
True

Python hiện đang hỗ trợ hai toán tử so sánh không bằng nhau,! = Và. Đây là các ký hiệu kiểu C và ABC/Pascal. Cái sau đang dần bị loại bỏ, vì vậy chúng tôi khuyên bạn nên chống lại việc sử dụng nó.

Python cũng cung cấp các toán tử kết hợp biểu thức:

and       or      not

Chúng ta có thể sử dụng các hoạt động này để chuỗi các biểu thức tùy ý với nhau và kết hợp hợp lý các kết quả boolean:

>>> 2 < 4 and 2 == 4
False
>>> 2 > 4 or 2 < 4
True
>>> not 6.2 <= 6
True
>>> 3 < 4 < 5
True

Ví dụ cuối cùng là một biểu thức có thể không hợp lệ trong các ngôn ngữ khác, nhưng trong Python, nó thực sự là một cách nói ngắn gọn:

>>> 3 < 4 and 4 < 5

Bạn có thể tìm hiểu thêm về các toán tử Python trong Phần 4.5 của văn bản.

>>> print -2 * 4 + 3 ** 2
1
6 là "bộ phận sàn" vô điều kiện, ví dụ:

>>> 4.0//1.5
2.0

Như bạn thấy, mặc dù cả hai toán hạng là

>>> print -2 * 4 + 3 ** 2
1
7,
>>> print -2 * 4 + 3 ** 2
1
6 vẫn còn sàn - vì vậy bạn luôn biết an toàn những gì nó sẽ làm.

Đơn

>>> print -2 * 4 + 3 ** 2
1
9 có thể hoặc không thể sàn tùy thuộc vào việc phát hành Python, nhập khẩu trong tương lai và thậm chí các cờ mà Python chạy, ví dụ:

$ python2.6 -Qold -c 'print 2/3'
0
$ python2.6 -Qnew -c 'print 2/3'
0.666666666667

Như bạn thấy, tầng

>>> print -2 * 4 + 3 ** 2
1
9 có thể trả lại một chiếc phao, dựa trên các vấn đề hoàn toàn không địa phương, cho đến và bao gồm giá trị của cờ
<    <=   >    >=   ==      !=      <>
1 ... ;-).or it may return a float, based on completely non-local issues, up to and including the value of the
<    <=   >    >=   ==      !=      <>
1 flag...;-).

Vì vậy, nếu và khi bạn biết bạn muốn sàn, luôn luôn sử dụng

>>> print -2 * 4 + 3 ** 2
1
6, đảm bảo nó. Nếu và khi bạn biết bạn không muốn sàn, hãy tát
<    <=   >    >=   ==      !=      <>
3 xung quanh toán hạng khác và sử dụng
>>> print -2 * 4 + 3 ** 2
1
9. Bất kỳ sự kết hợp nào khác, và bạn đang ở trong tình trạng thương xót của phiên bản, nhập khẩu và cờ!-)know you want flooring, always use
>>> print -2 * 4 + 3 ** 2
1
6, which guarantees it. If and when you know you don't want flooring, slap a
<    <=   >    >=   ==      !=      <>
3 around other operand and use
>>> print -2 * 4 + 3 ** 2
1
9. Any other combination, and you're at the mercy of version, imports, and flags!-)

Hướng dẫn what is the difference between single division and double division in python? - sự khác biệt giữa phân chia đơn và phân chia đôi trong python là gì?

Trong Python, bạn sử dụng nhà điều hành Double Slash

>>> print -2 * 4 + 3 ** 2
1
6 để thực hiện phân chia sàn. Toán tử
>>> print -2 * 4 + 3 ** 2
1
6 này chia số thứ nhất cho số thứ hai và làm tròn kết quả xuống số nguyên gần nhất (hoặc toàn bộ số).

Trong bài viết này, tôi sẽ chỉ cho bạn cách sử dụng toán tử

>>> print -2 * 4 + 3 ** 2
1
6 và so sánh nó với bộ phận thông thường để bạn có thể thấy nó hoạt động như thế nào.

Mặc dù vậy, nó không kết thúc ở đó - bạn cũng sẽ tìm hiểu về phương pháp toán học Python đồng nghĩa với toán tử chém đôi

>>> print -2 * 4 + 3 ** 2
1
6.

Những gì chúng tôi sẽ bao gồm

  • Cú pháp cơ bản của toán tử
    >>> print -2 * 4 + 3 ** 2
    1
    6
  • Ví dụ về phân chia sàn
  • Toán tử chém đôi
    >>> print -2 * 4 + 3 ** 2
    1
    6 hoạt động như
    >>> 2 < 4
    True
    >>> 2 == 4
    False
    >>> 2 > 4
    False
    >>> 6.2 <= 6
    False
    >>> 6.2 <= 6.2
    True
    >>> 6.2 <= 6.20001
    True
    1
  • Cách thức toán tử đôi
    >>> print -2 * 4 + 3 ** 2
    1
    6 hoạt động đằng sau hậu trường
  • Sự kết luận

Cú pháp cơ bản của toán tử >>> print -2 * 4 + 3 ** 2 16

Ví dụ về phân chia sàn

firstNum // secondNum

Ví dụ về phân chia sàn

Để sử dụng nhà điều hành Double Slash

>>> print -2 * 4 + 3 ** 2
1
6, bạn làm những việc gần như trong phân chia thông thường. Sự khác biệt duy nhất là thay vì một dấu gạch chéo
>>> print -2 * 4 + 3 ** 2
1
9, bạn sử dụng chém đôi
>>> print -2 * 4 + 3 ** 2
1
6:

>>> print -2 * 4 + 3 ** 2
1
0

Trong ví dụ dưới đây, phân chia sàn 12 x 5 dẫn đến 2:

>>> print -2 * 4 + 3 ** 2
1
1

Trong khi đó, sự phân chia thông thường của 12 by 5 sẽ bằng 2,4. Đó là, 2 phần còn lại 4:

Điều này cho bạn thấy rằng toán tử

>>> print -2 * 4 + 3 ** 2
1
6 làm tròn kết quả của việc phân chia hai số thành toàn bộ số gần nhất.

>>> print -2 * 4 + 3 ** 2
1
2

Ngay cả khi điểm thập phân là 9, toán tử

>>> print -2 * 4 + 3 ** 2
1
6 vẫn sẽ làm tròn kết quả xuống tổng số gần nhất.

Và nếu bạn thực hiện phân chia sàn với số âm, kết quả vẫn sẽ được làm tròn.

>>> print -2 * 4 + 3 ** 2
1
3

Toán tử chém đôi >>> print -2 * 4 + 3 ** 2 16 hoạt động như >>> 2 < 4 True >>> 2 == 4 False >>> 2 > 4 False >>> 6.2 <= 6 False >>> 6.2 <= 6.2 True >>> 6.2 <= 6.20001 True1

Trong Python,

>>> 2 < 4
True
>>> 2 == 4
False
>>> 2 > 4
False
>>> 6.2 <= 6
False
>>> 6.2 <= 6.2
True
>>> 6.2 <= 6.20001
True
1 làm tròn một số cho số nguyên gần nhất, giống như toán tử chém đôi
>>> print -2 * 4 + 3 ** 2
1
6.

Vì vậy,

>>> 2 < 4
True
>>> 2 == 4
False
>>> 2 > 4
False
>>> 6.2 <= 6
False
>>> 6.2 <= 6.2
True
>>> 6.2 <= 6.20001
True
1 là một thay thế cho toán tử
>>> print -2 * 4 + 3 ** 2
1
6 vì họ làm điều tương tự đằng sau hậu trường.

Đây là một ví dụ:

>>> print -2 * 4 + 3 ** 2
1
4

Bạn có thể thấy rằng

>>> 2 < 4
True
>>> 2 == 4
False
>>> 2 > 4
False
>>> 6.2 <= 6
False
>>> 6.2 <= 6.2
True
>>> 6.2 <= 6.20001
True
1 làm điều tương tự như toán tử
>>> print -2 * 4 + 3 ** 2
1
6.

Cách thức toán tử đôi >>> print -2 * 4 + 3 ** 2 16 hoạt động đằng sau hậu trường

Khi bạn sử dụng toán tử

>>> print -2 * 4 + 3 ** 2
1
6 để chia hai số, phương thức được gọi là phía sau hậu trường là
and       or      not
9.

Bạn cũng có thể sử dụng phương thức

and       or      not
9 này trực tiếp thay cho toán tử
>>> print -2 * 4 + 3 ** 2
1
6:

>>> print -2 * 4 + 3 ** 2
1
5

Sự kết luận

Trong bài viết này, bạn đã học được cách bạn có thể sử dụng nhà điều hành Double Slash

>>> print -2 * 4 + 3 ** 2
1
6 và cách nó hoạt động đằng sau hậu trường.

Ngoài ra, bạn đã tìm hiểu về hai lựa chọn thay thế của toán tử

>>> print -2 * 4 + 3 ** 2
1
6 -
>>> 2 < 4
True
>>> 2 == 4
False
>>> 2 > 4
False
>>> 6.2 <= 6
False
>>> 6.2 <= 6.2
True
>>> 6.2 <= 6.20001
True
1 và phương pháp
and       or      not
9.

Don Tiết bị nhầm lẫn về việc sử dụng. Ba cách bạn có thể thực hiện phân chia sàn làm việc theo cùng một cách. Nhưng tôi sẽ khuyên bạn nên sử dụng nhà điều hành Double Slash

>>> print -2 * 4 + 3 ** 2
1
6 vì bạn có thể gõ ít hơn với nó.

Cảm ơn bạn đã đọc.



Học mã miễn phí. Chương trình giảng dạy nguồn mở của Freecodecamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu

Sự phân chia kép có nghĩa là gì trong Python?

Trong Python, bạn sử dụng nhà điều hành chém đôi // để thực hiện phân chia sàn. Toán tử // này chia số thứ nhất cho số thứ hai và làm tròn kết quả xuống số nguyên gần nhất (hoặc toàn bộ số).divides the first number by the second number and rounds the result down to the nearest integer (or whole number).

Hai loại phân chia trong Python là gì?

Trong Python, có hai loại phân chia: phân chia số nguyên và phân chia phao.integer division and float division.

Sự khác biệt giữa dấu gạch chéo đơn và đôi trong Python là gì?

Python có hai nhà khai thác phân chia, một nhân vật chém duy nhất cho bộ phận cổ điển và một cú đánh đôi cho bộ phận của tầng sàn (làm tròn xuống tổng số gần nhất).Phân chia cổ điển có nghĩa là nếu cả hai toán hạng là cả số nguyên, nó sẽ thực hiện phân chia sàn, trong khi đối với số điểm nổi, nó đại diện cho sự phân chia thực sự.a single slash character for classic division and a double-slash for “floor” division (rounds down to nearest whole number). Classic division means that if the operands are both integers, it will perform floor division, while for floating point numbers, it represents true division.

Sự khác biệt giữa phân chia và phân chia sàn trong Python là gì?

/ vs // - Phân khu VS Sân bộ phân chia toàn bộ sự phân chia thường xuyên luôn là một chiếc phao, trong khi nếu một trong các toán hạng là một chiếc phao trong phân chia sàn, thì đầu ra sẽ là một chiếc phao.The result of regular division is always a float, whereas if one of the operands is a float in floor division, then the output will be a float.