오늘은 IronPython2.7에 다음과 같은 문제를 발견했습니다. IronPython 대신 Python2.7 또는 Python3.4를 사용하면 동일한 결과를 얻습니다. (철) 파이썬 형식 문제는
>>> "%s%.2f" % ('x', -0.004)
'x0.00'
가 'X'
는 임의의 문자입니다 :>>> "%.2f" % -0.004
'-0.00'
그럼 난과 같이 형식 문자열에 두 개의 인수를 전달하여 negativ 제로 제거 할 수 있다는 것을 깨달았다. 그래서 float 값과 마이너스가 사라지기 전에 다른 문자열을 포맷합니다. 즉 내가받을 경우, 비록 Python2.7와 Python3.4 작동하지 않습니다
>>> "%s%.2f" % ('x', -0.004)
'x-0.00'
사람이 여기에 무슨 일이 일어나고 있는지 알고 있나요?
형식화 된 "negativ zero"의 목적은 무엇입니까?
IronPython의 버그와 같습니다. 가능할 때마다 CPython 레퍼런스 구현을 따라야한다. –
당신이 알고 있는지 모르겠지만 음수 0은 완벽하게 유효한 float 값입니다 :'-0.0'. 그것은 양수 영 (0)과 구별됩니다. IronPython이 빼기 기호를 사라지게하는 이유는 알 수 없으므로 형식 문자열에 다른 값이 있습니다. – Blckknght