2010-08-03 42 views

Trả lời

21

int sẽ luôn luôn cắt ngắn về phía zero:

>>> a = 123.456 
>>> int(a) 
123 
>>> a = 0.9999 
>>> int(a) 
0 
>>> int(-1.5) 
-1 

Sự khác biệt giữa intmath.floormath.floor trả về số như một float, và không cắt xén về phía không.

+1

'math.floor' làm những gì cần (cắt ngắn theo hướng vô cùng âm). Trong Py3k nó trả về một 'int' (thankfully = p) – katrielalex

2

Python 2.x:

import math 
int(math.floor(a)) 

N.B. Do các lý do phức tạp liên quan đến việc xử lý các phao nổi, nên việc đúc int an toàn.

Python 3.x:

import math 
math.floor(a) 
+0

NB là gì, btw tôi đã gửi cho bạn một email vài ngày trước, bạn có hiểu không? –

+0

bạn nghĩ gì về phương pháp đánh dấu? –

+0

hehe yep, sẽ trả lời khi tôi có thời gian rảnh = p. Tôi đã bình luận về phương pháp của Mark. – katrielalex

2
a = 123.45324 
int(a) 
Các vấn đề liên quan