Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python 데이터 타입 변환 함수 총정리: int부터 dict까지

Python에서는 내장 변환 함수를 활용해 서로 다른 데이터 타입 간의 형 변환을 손쉽게 수행할 수 있습니다. 이 글에서는 자주 사용되는 주요 데이터 변환 함수들의 기능과 사용 예제를 하나씩 살펴보겠습니다.

1. int() – 정수형으로 변환

int() 함수는 부동소수점 숫자나 정수 형태의 문자열을 정수 객체로 변환합니다. 문자열을 변환할 때는 두 번째 인자로 진법(base)을 지정할 수 있어, 16진수나 8진수 문자열도 정수로 변환할 수 있습니다.

>>> int('11')
11
>>> int(11.15)
11
>>> int('20', 8)   # 8진수 '20' → 10진수 16
16
>>> int('20', 16)  # 16진수 '20' → 10진수 32
32

참고로 int()는 소수점 이하를 반올림하지 않고 잘라내기(truncation)하므로, 11.15는 12가 아닌 11로 변환됩니다.

2. float() – 실수형으로 변환

float() 함수는 정수에 소수부 .0을 붙여 실수로 만들거나, 실수 형태의 문자열을 부동소수점 객체로 변환합니다.

>>> float(11)
11.0
>>> float('11.11')
11.11

3. str() – 문자열로 변환

str() 함수는 어떤 데이터 타입의 객체든 문자열 표현으로 변환합니다. 숫자뿐 아니라 리스트, 튜플, 딕셔너리 같은 컬렉션 객체도 문자열로 바꿀 수 있습니다.

>>> str(10)        # int → str
'10'
>>> str(11.11)     # float → str
'11.11'
>>> str([1,2,3])   # list → str
'[1, 2, 3]'
>>> str((1,2,3))   # tuple → str
'(1, 2, 3)'
>>> str({1:100,2:200})
'{1: 100, 2: 200}'

4. complex() – 복소수로 변환

complex() 함수는 두 개의 실수를 인자로 받아 복소수 객체를 반환합니다. 첫 번째 인자는 실수부(real part)가 되고, 두 번째 인자는 j를 곱한 허수부(imaginary part)가 됩니다.

>>> complex(2.5, 3.5)
(2.5+3.5j)

5. list() – 리스트로 변환

list() 함수는 문자열과 튜플을 리스트 객체로 변환합니다. 또한 딕셔너리의 키(key)들을 요소로 하는 리스트 객체를 반환하기도 합니다.

>>> list("TutorialsPoint")
['T', 'u', 't', 'o', 'r', 'i', 'a', 'l', 's', 'P', 'o', 'i', 'n', 't']
>>> list((1,2,3))
[1, 2, 3]
>>> list({'a':11,'b':22,'c':33})
['a', 'b', 'c']

6. tuple() – 튜플로 변환

tuple() 함수는 문자열과 리스트를 튜플 객체로 변환합니다. 마찬가지로 딕셔너리의 키들로 구성된 튜플 객체도 반환할 수 있습니다.

>>> tuple('TutorialsPoint')
('T', 'u', 't', 'o', 'r', 'i', 'a', 'l', 's', 'P', 'o', 'i', 'n', 't')
>>> tuple([1,2,3])
(1, 2, 3)
>>> tuple({'a':11,'b':22,'c':33})
('a', 'b', 'c')

7. dict() – 딕셔너리로 변환

dict() 함수는 요소 개수가 동일한 2개짜리 튜플(키-값 쌍)의 리스트로부터 딕셔너리 객체를 생성합니다.

>>> dict([(1,1),(2,2)])
{1: 1, 2: 2}

마무리

Python의 내장 변환 함수들은 코드 작성 시 데이터 타입을 유연하게 다룰 수 있게 해주는 필수 도구입니다. 특히 사용자 입력 처리, 파일 데이터 파싱, API 응답 가공 등에서 빈번하게 활용되므로 각 함수의 동작 방식을 정확히 이해해 두는 것이 좋습니다.