작동 :?파이썬에서`round`와`__round__`의 차이점은 무엇입니까? 파이썬 3이에서
Fahrenheit = map(lambda x: ((float(9/5))*x + 32).round(3), Celsius)
또한, 파이썬 스크립트의 nowdays의 많은이 이전 형식 __round__
을 사용하지 않는 이유는,이 작동하지 않습니다
Celsius = [39.2, 45.2, 37.3, 37.8, 89]
Fahrenheit = map(lambda x: ((float(9/5))*x + 32).__round__(3), Celsius)
print(list(Fahrenheit))
[102.56, 113.36, 99.14, 100.04, 192.2]
을하지만 스크립트를 더 깨끗하게 보이게하는 이유를 생각해보십시오. 다른 핵심적인 이유는 무엇입니까?
'__round__'은 * 후크 방식 *입니다. 'round()'함수를 사용하면, 필요에 따라'round ((float (9/5)) * x + 32), 3)'훅 메소드를 사용할 것이다. 그러나,'float (9/5)'는 잘못된 값이고'9.0/5'를 원합니다. –
하지만 왜 float에서는'round (2)'가 작동하지 않습니다. 이것은 정말로 혼란 스럽다. – everestial007
플로트에는'.round' 메서드가 없으므로 ...? 이것에 대해 명확하지 않은 점은 무엇입니까? –