Hãy xem này:Python lạ int hành vi
print 41063625 ** (1.0/3) # cube-root(41063625) = 345
print int(345.0)
print int(41063625 ** (1.0/3))
Nó ra:
345.0
345
344
Tôi đã chờ đợi dòng cuối cùng là 345
, vì tôi đã mong int(41063625 ** (1.0/3))
để bằng int(345.0)
để ở lần lượt bằng 345
, như hai kết quả đầu ra khác đề nghị. Tuy nhiên, điều này rõ ràng không phải là trường hợp. Bất cứ ai có thể cho tôi bất kỳ cái nhìn sâu sắc như những gì đang xảy ra ở đây?
Ah được rồi, điều đó có ý nghĩa - không biết đó là một tính năng của 'in' tròn như thế. Cảm ơn! – arshajii
Nó có thể được minh họa để đăng đầu ra của 'str (41063625 ** (1.0/3))' vì đó là những gì 'in' thực sự in. – mgilson
@mgilson: Cảm ơn; được thêm vào. – unutbu