소수의 자리수 변경하기
python 내장함수인 round를 이용해보도록 합니다.
소수점 자리수가 너무 길어서 제한해야 할 때가 있습니다.
data_float = [0.0004739435, 0.0004737749, 0.0004736154, 0.0004734571, 0.000473302]
위 데이터를 소수점 8째 자리까지로 제한한다면
data_8=[]
for i in data_float:
data_8.append(round (i, 8))
print(data_8)
이렇게 적용해보시면 각 데이터를 8째 자리까지 반올림하여 맞춰줍니다.
[0.00047394, 0.00047377, 0.00047362, 0.00047346, 0.0004733]
그 외 format이나 문자열 명령어를 이용하는 방법도 있습니다.
data_format = []
for i in data_float:
data_format.append(format(i,'0.8f'))
print('====================')
print (data_float)
print (data_format)
[0.0004739435, 0.0004737749, 0.0004736154, 0.0004734571, 0.000473302]
['0.00047394', '0.00047377', '0.00047362', '0.00047346', '0.00047330']
역시 반올림하여 8번째 자리수를 맞춥니다.
반올림하지 않고 8자리 이후 숫자를 날리고 싶을 때는
data_trunc = []
for i in data_float:
data_trunc.append(float(str(i)[:10]))
print('====================')
print (data_float)
print (data_trunc)
====================
[0.0004739435, 0.0004737749, 0.0004736154, 0.0004734571, 0.000473302]
[0.00047394, 0.00047377, 0.00047361, 0.00047345, 0.0004733]
이렇게 반올림하지 않고 8번째 자리수까지 잘라줍니다.
맺음
좋은 아이디어 있으면 댓글로 남겨주세요 ~~