2012-02-29 5 views
2

이 같은 AA 파일,python-

...

3.999999000000e-003 1.2344325e-003

4.000000000000e-003 1.2342323e이 -003

...

난 단지 0.004 (4.000000000000e-003 긴 형식)에 동일한 값 것을 발견하려고하지만 입력 경도를 갖고 싶어 그나마 g 형식은 파일에서 파일로 변경 될 수 있습니다. 미리 줄 분할을해야하므로 문자열에서 먼저 변환해야합니다.

0.004 == 4.000000000000e-003 같은 것을 어떻게 평가할 수 있습니까?

것은 내가 현재와 같은 물건을 시도하고있다,하지만 당신은 두 개의 부동 소수점 숫자를 비교해야하는 경우 분명히 그것

 line_tmp = line.split() 

     if float(line_tmp[0]) == 0.004: 
      print(line_tmp[0]) 
      print(float(line_tmp[0])) 

답변

3

작동하지 않습니다, 당신은 그들 사이의 차이가 매우 작은 수 있는지 여부를 확인해야합니다. 예 :

if abs(number1 - number2) < 1e-8: 
    # Do something 
+0

감사합니다. 거기에 더 우아한 솔루션이있을 것 같습니다. –

+1

클래식 읽기 : http://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html –