본문 바로가기

파이썬

[Python]#2 파이썬 타입 종류, 형변환

Python 타입 종류?

파이썬에서 유형은 표현하는 데이터의 종류를 나타내는 값 또는 표현식의 범주를 나타냅니다. Python은 다음을 포함하여 다양한 내장 데이터 유형을 지원합니다.

숫자 유형: int(정수), float(부동 소수점 숫자) 및 complex(복소수).
시퀀스 유형: 목록(순서가 있는 가변 시퀀스), 튜플(순서가 있고 변경 불가능한 시퀀스) 및 범위(불변의 숫자 시퀀스).
텍스트 유형: str(유니코드 문자열).
매핑 유형: dict(값에 대한 키의 정렬되지 않은 변경 가능한 매핑).
집합 유형: set(순서가 지정되지 않고 변경 가능한 고유 요소 집합) 및 frozenset(순서가 지정되지 않고 변경 불가능한 고유 요소 집합).
부울 유형: bool(논리 값 True 또는 False).
이진 유형: bytes(바이트의 불변 시퀀스) 및 bytearray(바이트의 가변 시퀀스).
개체 유형: 개체(Python의 모든 개체에 대한 기본 클래스).
NoneType: 없음(값이 없음을 나타내는 특수 개체).
내장 type() 함수를 사용하여 Python에서 값 또는 표현식의 유형을 결정할 수 있습니다.

예를 들어:

x = 10
print(type(x))  # Output: <class 'int'>

y = "Hello, World!"
print(type(y))  # Output: <class 'str'>

z = [1, 2, 3]
print(type(z))  # Output: <class 'list'>

값의 유형을 아는 것은 Python에서 특정 데이터 유형에 특정한 작업이나 기능을 수행해야 할 때 유용할 수 있습니다.

Python에서 형변환?

유형 변환(유형 변환이라고도 함)은 한 데이터 유형의 값을 다른 데이터 유형으로 변환하는 프로세스입니다.

Python은 다양한 데이터 유형에 대한 유형 변환을 수행하는 내장 함수를 제공합니다. 다음은 Python에서 일반적으로 사용되는 형식 변환 함수 중 일부입니다.

int(): 이 함수는 값을 정수로 변환하는 데 사용됩니다. 예를 들어:

x = int("10") # convert the string "10" to an integer
y = int(3.14) # convert the float 3.14 to an integer (result: 3)

float(): 이 함수는 값을 부동 소수점 숫자로 변환하는 데 사용됩니다. 예를 들어:

x = float("3.14") # convert the string "3.14" to a float
y = float(10) # convert the integer 10 to a float (result: 10.0)


str(): 이 함수는 값을 문자열로 변환하는 데 사용됩니다. 예를 들어:

x = str(10) # convert the integer 10 to a string (result: "10")
y = str(3.14) # convert the float 3.14 to a string (result: "3.14")

bool(): 이 함수는 값을 부울 값으로 변환하는 데 사용됩니다. 예를 들어:

x = bool(10) # convert the integer 10 to a Boolean (result: True)
y = bool(0) # convert the integer 0 to a Boolean (result: False)

이러한 내장 함수 외에도 Python을 사용하면 사용자 정의 유형 변환을 수행하기 위해 고유한 함수를 정의할 수 있습니다. 형식 변환은 프로그래밍에서 일반적인 작업이며 사용 가능한 변환 함수와 그 사용에 익숙해지면 깔끔하고 효율적인 코드를 작성하는 데 도움이 될 수 있습니다.

 

형변환 에러

age = input("how old are u?")
print(type(age)) #<class 'str'>
age = age + 5
print("My name is {} and I am {} years old".format(name, age))

Traceback (most recent call last):
File "main.py", line 4, in <module>
age += 5
TypeError: can only concatenate str (not "int") to str

위에 처럼 input() 함수 사용 시 결과값은 string으로 담아지는데 age = age + 5(int) 형변환 에러가 난다.

이럴 경우 age = int(age)+5 (형변환)을 해주어야 한다.