소개
이 글에서는 Python의 float()
함수를 사용하여 문자열을 부동 소수점으로 변환할 것입니다. 또한 Python의 str()
함수를 사용하여 부동 소수점을 문자열로 변환할 것입니다.
계산 및 연결에 사용하기 전에 데이터 유형을 올바르게 변환하여 런타임 오류를 방지하기 위해서는 중요합니다.
전제 조건
이 튜토리얼을 완료하려면 다음이 필요합니다:
- Python 3의 설치에 익숙해야 합니다. 그리고 Python에서 코딩하는 데 익숙해야 합니다. Python 3로 코딩하는 방법 시리즈 또는 Python용 VS Code를 사용합니다.
이 튜토리얼은 Python 3.9.6에서 테스트되었습니다.
float()
함수 사용
우리는 Python에서 float()
함수를 사용하여 문자열을 부동 소수점으로 변환할 수 있습니다. 이 함수는 객체를 부동 소수점 숫자로 변환하는 데 사용되는 내장 함수입니다. 내부적으로 float()
함수는 지정된 객체의 __float__()
함수를 호출합니다.
예시
Python에서 문자열을 부동 소수점으로 변환하는 예시를 살펴보겠습니다:
input_1 = '10.5674'
input_1 = float(input_1)
print(type(input_1))
print('Float Value =', input_1)
결과:
<class 'float'>
Float Value = 10.5674
'10.5674'
의 문자열 값이 10.5674
의 부동 소수점 값으로 변환되었습니다.
왜 문자열을 부동 소수점으로 변환해야 할까요?
터미널을 통해 사용자 입력으로 부동 소수점 값을 받거나 파일에서 읽어오는 경우, 그들은 문자열 객체입니다. 이를 부동 소수점으로 명시적으로 변환하여 덧셈, 곱셈 등 필요한 작업을 수행할 수 있도록 해야 합니다.
input_1 = input('Please enter first floating point value:\n')
input_1 = float(input_1)
input_2 = input('Please enter second floating point value:\n')
input_2 = float(input_2)
print(f'Sum of {input_1} and {input_2} is {input_1+input_2}')
참고: 만약 f 접두사를 사용한 문자열 포매팅에 익숙하지 않다면, Python에서 f-문자열 사용법을 읽어보세요.
이 코드를 실행하고 input_1
과 input_2
에 부동 소수점 값을 제공해 보겠습니다:
Please enter first floating point value:
10.234
Please enter second floating point value:
2.456
Sum of 10.234 and 2.456 is 12.69
결과적으로 10.234
와 2.456
의 합은 12.69
입니다.
이상적으로는 사용자의 잘못된 입력을 처리하기 위해 try-except
블록을 사용해야 합니다.
str()
함수를 사용하는 방법
또한 str()
함수를 사용하여 부동 소수점을 문자열로 변환할 수 있습니다. 이는 부동 소수점 값을 연결하려는 상황에서 필요할 수 있습니다.
예시
예시를 살펴보겠습니다:
input_1 = 10.23
input_2 = 20.34
input_3 = 30.45
# Python 3.6+에서 f-string을 사용하고, 오래된 버전의 경우 format()으로 변경합니다
print(f'Concatenation of {input_1} and {input_2} is {str(input_1) + str(input_2)}')
print(f'CSV from {input_1}, {input_2} and {input_3}:\n{str(input_1)},{str(input_2)},{str(input_3)}')
print(f'CSV from {input_1}, {input_2} and {input_3}:\n{", ".join([str(input_1),str(input_2),str(input_3)])}')
다음 코드를 실행해 봅시다:
Concatenation of 10.23 and 20.34 is 10.2320.34
CSV from 10.23, 20.34 and 30.45:
10.23,20.34,30.45
CSV from 10.23, 20.34 and 30.45:
10.23, 20.34, 30.45
10.23
와 20.34
를 연결하면 문자열 '10.2320.34'
이 생성됩니다. 이 코드는 또한 두 가지 버전의 쉼표로 구분된 값(CSV)을 생성합니다.
위 프로그램에서 부동 소수점을 문자열로 변환하지 않으면 join()
함수가 예외를 발생시킵니다. 또한 부동 소수점 숫자를 추가하는 +
연산자를 사용할 수 없습니다.
결론
당신은 우리의 GitHub 저장소에서 완전한 파이썬 스크립트와 더 많은 파이썬 예제를 확인할 수 있습니다.
참고문헌:
Source:
https://www.digitalocean.com/community/tutorials/python-convert-string-to-float