Hướng dẫn how do you divide two integers and get a float in python? - làm thế nào để bạn chia hai số nguyên và nhận được một số float trong python?

Làm thế nào tôi có thể buộc sự phân chia để được thả nổi trong Python?

Tôi có hai giá trị số nguyên A và B, nhưng tôi cần tỷ lệ của chúng ở điểm nổi. Tôi biết rằng A

Làm thế nào tôi có thể buộc C trở thành một số điểm nổi trong Python sau đây?

c = a / b

Những gì thực sự được hỏi ở đây là:

"Làm thế nào để tôi buộc sự phân chia thực sự sao cho

>>> 1/2
0.5
0 sẽ trả lại một phần?"

Nâng cấp lên Python 3

Trong Python 3, để có được sự phân chia thực sự, bạn chỉ cần làm

>>> 1/2
0.5
0.

>>> 1/2
0.5

Phân chia sàn, hành vi phân chia cổ điển cho số nguyên, hiện là

>>> 1/2
0.5
2:

>>> 1//2
0
>>> 1//2.0
0.0

Tuy nhiên, bạn có thể bị mắc kẹt khi sử dụng Python 2 hoặc bạn có thể viết mã phải hoạt động trong cả 2 và 3.

Nếu sử dụng Python 2

Trong Python 2, nó không quá đơn giản. Một số cách để đối phó với bộ phận Python 2 cổ điển là tốt hơn và mạnh mẽ hơn những cách khác.

Khuyến nghị cho Python 2

Bạn có thể nhận được hành vi phân chia Python 3 trong bất kỳ mô -đun nào với nhập khẩu sau ở đầu:

from __future__ import division

sau đó áp dụng phân chia kiểu Python 3 cho toàn bộ mô -đun. Nó cũng hoạt động trong vỏ trăn tại bất kỳ điểm nào. Trong Python 2:

>>> from __future__ import division
>>> 1/2
0.5
>>> 1//2
0
>>> 1//2.0
0.0

Đây thực sự là giải pháp tốt nhất vì nó đảm bảo mã trong mô -đun của bạn tương thích về phía trước với Python 3.

Các tùy chọn khác cho Python 2

Nếu bạn không muốn áp dụng điều này cho toàn bộ mô -đun, bạn sẽ giới hạn trong một vài cách giải quyết. Phổ biến nhất là ép buộc một trong những toán hạng cho một chiếc phao. Một giải pháp mạnh mẽ là

>>> 1/2
0.5
3. Trong vỏ trăn tươi:

>>> 1/(2 * 1.0)
0.5

Ngoài ra mạnh mẽ là

>>> 1/2
0.5
4 từ mô -đun
>>> 1/2
0.5
5
>>> 1/2
0.5
6, nhưng điều này có thể chậm hơn vì đó là một cuộc gọi chức năng:

>>> from operator import truediv
>>> truediv(1, 2)
0.5

Không được khuyến nghị cho Python 2

Thường thấy là

>>> 1/2
0.5
7. Điều này sẽ tăng một kiểu mẫu nếu B là một số phức. Vì sự phân chia với các số phức được xác định, tôi không có sự phân chia nào khi vượt qua một số phức cho ước số.

>>> 1 / float(2)
0.5
>>> 1 / float(2j)
Traceback (most recent call last):
  File "", line 1, in 
TypeError: can't convert complex to float

Tôi không có ý nghĩa gì khi cố tình làm cho mã của bạn dễ vỡ hơn.

Bạn cũng có thể chạy Python bằng cờ

>>> 1/2
0.5
8, nhưng điều này có nhược điểm của việc thực hiện tất cả các mô -đun với hành vi Python 3 mới và một số mô -đun của bạn có thể mong đợi sự phân chia cổ điển, vì vậy tôi không đề xuất điều này ngoại trừ thử nghiệm. Nhưng để chứng minh:

$ python -Qnew -c 'print 1/2'
0.5
$ python -Qnew -c 'print 1/2j'
-0.5j

Hướng dẫn how do you divide two integers and get a float in python? - làm thế nào để bạn chia hai số nguyên và nhận được một số float trong python?

Bạn có thể chia hai số nguyên để có được một chiếc phao không?integer division and float division. Integer division returns the floor of the division. Integer values are precisely stored, so they are safe to use in comparisons. In this example, we will look at how to perform float division.

Để chia các giá trị nổi trong Python, hãy sử dụng / toán tử. Nhà điều hành bộ phận / lấy hai tham số và trả về bộ phận Float. Phân chia float tạo ra một phỏng đoán điểm nổi về kết quả của một bộ phận.

Nếu bạn đang làm việc với Python 3 và bạn cần thực hiện một bộ phận nổi, thì hãy sử dụng toán tử phân chia.

Đầu ra

Chỉ có một số lượng giá trị cụ thể sau thập phân có thể được lưu, do đó không thể lưu trữ một mô tả nhị phân chính xác về nhiều số điểm nổi.

Phân chia phao cho Python 2

Trong Python 2, nhà điều hành phân chia tiêu chuẩn duy nhất là//. Nếu cả hai giá trị là số nguyên, kết quả là một số nguyên. Nếu một trong hai giá trị là phao, giá trả là giá trị float.“/”. If both values are integers, the result is an integer. If either of the values is the float, the return is the float value.

Để thực hiện phân chia float trong Python 2, hãy nhập gói phân chia __future__ và sau đó sử dụng toán tử \ \ 'để có kết quả.__future__ module and then use the “\\” operator to get the result.

from __future__ import division

print(10 // 9)

Đầu ra

Trong Python 3, dấu gạch chéo đơn (/) có nghĩa là phân chia thích hợp. Nhà điều hành // được sử dụng để chia cắt. Thêm toán tử DOT (.) Cho biết các số điểm nổi.// operator is used for truncating division. Adding a dot (.) operator indicates the floating-point numbers.

Đó là nó cho hướng dẫn này.

Bộ phận có trở lại nổi trong Python không?

Kết quả của 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.In (2/2, "\ tis A Float.") In (15 // 4, ", whereas if one of the operands is a float in floor division, then the output will be a float. print(2 / 2, "\tis a float.") print(15 // 4, "\tis an int.") print(15.0 // 4, "\tis a float.")

Bạn có thể chia hai số nguyên để có được một chiếc phao không?

Chia hai số nguyên sẽ dẫn đến kết quả số nguyên (toàn bộ).Bạn cần đúc một số làm phao, hoặc thêm số thập phân cho một trong các số, như A/350.0.You need to cast one number as a float, or add a decimal to one of the numbers, like a/350.0.

Bạn có thể chia một chiếc phao không?

Bạn có thể chia một số điểm nổi với số nguyên.Kiểu dữ liệu của toán hạng và giá trị được trả về được đưa ra trong đoạn mã sau.Trong chương trình sau, chúng tôi khởi tạo một biến số nguyên và biến điểm nổi, chia chúng và lưu trữ trong một biến nổi.Độ chính xác được bảo tồn.. The datatype of the operands and returned value is given in the following code snippet. In the following program, we initialize an integer variable and a floating point variable, divide them and store in a float variable. The precision is preserved.