: 효율적인 메모리 사용을 위해서 데이터를 정수형,실수형,문자(열)형, 논리형으로 구분한 것
# 정수형 : int (메모리가 허용되는 한 무한 사용 가능)
num = 10
score = 85
# 실수 : float (대략 소수점 이하 17~18번째에서 데이터 손실(짤림)이 일어남)
pi = 3.14
height = 153.2
# 문자(열): str (큰따옴표/작은따옴표 각각 사용 가능 but 혼용 불가능)
intro = '안녕하세요.'
country = "korea"
# 논리형: bool
exampleResult =True
dayoff = False
자료형 변환(Type casting) : 데이터 타입을 변환하는 것으로 파이썬에서 제공하는 함수를 이용
# < 정수 to 문자(열) >
var = 100 #정수형
var = str(var) #정수형 변수(int)를 문자형(str)으로 재할당
print(type(var)) #class가 문자형'str'으로 나오게됨.
# < 실수 to 문자(열) >
var = 3.14 #실수형
var = str(var) #실수형 변수(float)를 문자형(str)으로 재할당
print(type(var)) #class가 문자형'str'으로 나오게됨.
# < 논리 to 문자(열) >
var = True #논리형
var = str(var) #논리형 변수(bool)를 문자형(str)으로 재할당
print(type(var)) #class가 문자형'str'으로 나오게됨.
# < 문자(열) to 정수 >
var = '100' #문자형
var = int(var) #문자형 변수(str)를 정수형(int)으로 재할당
print(type(var)) #class가 정수형'int'으로 나오게됨.
# < 문자(열) to 실수 >
var = '3.14' #문자형
var = float(var) #문자형 변수(str)를 실수형(float)으로 재할당
print(type(var)) #class가 실수형'float'으로 나오게됨.
#다른 예시(초기화 하지 않고 타입변환하기)
print(float(var)+float(var))
# < 논리 to 정수 > (true는 1 / false는 0 으로 변환)
var = True #논리형
var = int(var) #논리형 변수(bool)를 정수형(int)으로 재할당
print(type(var)) #class가 정수형'int'으로 나오게됨.
# < 논리 to 실수 >
var = True #논리형
var = float(var) #논리형 변수(bool)를 실수형(float)으로 재할당
print(type(var)) #class가 실수형'float'으로 나오게됨.
# < 빈문자 to 논리 >
var = '' #빈문자
var = bool(var) #문자형 변수(str)를 논리형(bool)으로 재할당
print(var) #값으로 'False'
print(type(var)) #class가 논리형'bool'으로 나오게됨.
# < 공백 문자 to 논리 >
var = ' ' #공백 문자
var = bool(var) #문자형 변수(str)를 논리형(bool)으로 재할당
print(var) #값으로 'True'
print(type(var)) #class가 논리형'bool'으로 나오게됨.
# < 문자(열) to 논리 to 정수 >
var1 = 'True' #문자형
var2 = 'False'
var1 = bool(var1) #논리형 변수(bool)로 변환
var2 = bool(var2)
print(var1 + var2) #값은 2가 나옴 (why? true(1) 두개가 더해졌기 때문)
print(type(var1 + var2)) #class가 정수형'int'로 나오게됨.
#방법1
print('키보드를 통해서 데이터를 입력하세요.')
userInputData = input()
#방법2
userInputData = input('키보드를 통해서 데이터를 입력하세요.')
print(userInpoutData)
# 예시 : input(문자형) to 정수형
userInputData = int(input('정수형을 입력하세요.'))
print(userInputData)
print(type(userInputData) #class가 정수형'int'로 나오게됨
userName = '홍길동'
userAge = 20
print(userName) # 홍길동
print(userAge) # 20
print('유저이름: ', userName) #유저이름: 홍길동
print('나이: ',userAge) #나이: 20
print('유저이름: ',userName ,' , 나이: ',userAge) #유저이름: 홍길동, 나이: 20
print(f'유저이름 : {userName}')
print(f'나이 : {userAge}')
print(f'유저이름 : {userName} , 나이 : {userAge}' )
print('3*5=', end='')
print(3*5)
#결과값이 한 줄에 표현 3*5 = 15
#개행 : \n
#탭 : \t
print(f'유저이름\t:{userName}')
#format 함수 예시
print('유저이름: {}'.format(userName))
print('나이: {}'.format(userAge))
print('유저이름:{}, 나이:{}' .format(userName, userAge))
#if 순서를 바꾸고 싶을 경우 (인덱스를 추가하여 강제로 바꾸어줌)
print('나이:{1}, 유저이름:{0}' .format(userName, userAge))
print('유저이름: %s' %userName)
print('나이: %d' %userAge)
print('유저이름: %s, 나이:%d' %(userName, userAge))
print('Pi: %f' %3.14)
print('pi : %.2f' %3.141592) #소수점 두자리까지인 3.14출력