2012-07-31 5 views
2

내가 파이썬으로 작성된 라이브러리 'scikits 이미지'의 소스 코드를 읽고있다, 나는 코드의 다음 줄을 발견 : 그들은 NumPy와 기능을 가입하는 이유np.floor 함수와 // 연산자를 파이썬에서 결합하는 이유는 무엇입니까?

n_cellsx = int(np.floor(sx // cx)) 

모르겠다을 floor// 운영자. 이것을 할 어떤 이유가 있습니까? 나는 볼 수 없다. 같은 일을 두 번하고 있다고 생각합니다.

이 프로젝트는, 그래서 floor는 아무것도 할 것이다 //는 정수 또는 정수에 해당하는 플로트 중 하나를 반환합니다, 그렇게 할 이유가 없습니다 here

+7

그는 실제로 결과가 'int'인 것처럼 보입니다. –

답변

2

입니다.

1

모든 일을 할 이유가에 관해서는 : 그들은 0을 다음의 주어진 수를 삭감 할 수 있습니다 ... 예 체크 아웃 : 다음

>>> int(np.floor(40 // 10)) 
Out[40]: 4 

하나가 바로 INT 한 경우를, 그가 것 40 얻을 .... 왜 INT 부분에 관해서는

,

>>> (49 // 10.0) 
Out[50]: 4.0 

바닥을() 코드/대신해야하는 데 사용하지 않는 부분은, 그러나 아무것도하지 않는 // 프로그래머가 // 동료를 /로 대체 할 것을 두려워합니다 ...//

관련 문제