PYTHON

파이썬 - 기본 타입 - int, float, str, list, dict

미스털이 사용자 2021. 8. 31. 16:37
반응형

데이터 타입에 대해 알아볼게요.

데이터 타입이 자칫 중요하지 않게 느껴질 수 있지만

조건문에서도 쓰이고, 연산과정에서도 활용됩니다. 심지어 필요로하는 타입이 아니게 되면 문제를 일으킬 수 있습니다.

 

첫번째 예) 매개변수의 타입에 따라 다르게 처리하기

print('함수에 return 값 보내기(2)\n')
 
def triple(m) :	
	if type(m) is str :
		res = ''
	else :
		res = 0
	for i in range(0, 3) :
		res = res + m
	print(res)	
 
triple(3)
triple('m')

(4행) 매개변수의 타입이 str(문자열)이라면 해당 문자열을 3번 복사해서 출력

(6행) str이 아니라면 입력된 값의 3배를 출력

해당 함수를 3과 m값을 넣어 호출했는데요. 결과는 다음과 같습니다.

 

두번째 예) 문자열과 리스트를 변형, 응용하기

print('문자열과 리스트의 이해\n')
 
#첫글자 바꾸기
x = 'banana'
x = 'n' + x[1:]
print(f'1. 첫글자 바꾸기 : {x}\n')
 
#특정글자를 찾아 그 위치 기준 이전문자열 뽑기
x = 'hello world'
x_pos = x.find('w')
x = x[:x_pos]
x = x.rstrip() #뒷 공백 없애주기
print(f'2. 특정글자를 찾아 그 위치 기준 이전문자열 뽑기 : {x}\n')
 
#리스트 추가, 삭제, 정렬
prime = [5, 11, 8]
prime.append(9) #맨 끝에 추가
prime.insert(1, 3) #2(1 + 1)번째 열에 3값 추가
prime[0] = 100 #1(0 + 1)번째 열에 100값 추가
print('추가작업이 끝난 리스트 : ', prime, '\n')
 
pop_int = prime.pop() #맨끝의 열 삭제 (이 삭제한 값은 pop_int변수의 값으로 지정)
del prime[0] #1(0 + 1)번째 열의 값을 삭제
print(f'삭제작업이 끝난 리스트 : {prime} \n')
 
prime.sort() #정렬
print(f'정렬작업이 끝난 리스트 : {prime} \n')
 
#타입 인지와 변경(str, int)
a = 12345
print(type(a))
a = str(a)
print(type(a))

이건 각 줄마다 주석을 달았으니 참고부탁드립니다.

다만 한가지 살펴볼 점(5행) : [a:b]가 있는데 이건 문자열의 범위를 잘라내는 것입니다.

[1:]이렇게 된 것은 2번째 위치의 글자부터 마지막 글자까지 갖고오겠다는 뜻입니다. (프로그램에서 1번째는 0을 뜻하는 것 잊지마세요.)

결과는 다음과 같습니다.

 

세번째 예) key와 value 속성을 갖고있는 dict 이해하기

kor_num = {}
kor_num[1] = '일'
kor_num[2] = '이'
kor_num[3] = '삼'
kor_num[4] = '사'
kor_num[5] = '오'
kor_num[6] = '육'
kor_num[7] = '칠'
kor_num[8] = '팔'
kor_num[9] = '구'
 
def korean_number(n) :
	n = int(n)
	return kor_num[n]
 
while True :
	inp = input('입력하세요.(0 : 종료)')
	if inp == '0' :
		print('종료')
		break
	else :
		print(korean_number(inp))

(1행) korea_num을 dict타입 변수로 선언시켜 1~9를 키값으로 그에 대응하는 일~구를 벨류값으로 설정합니다.

(12행) korean_number라는 함수를 만들어서 매개변수에 해당하는 키값의 벨류를 리턴하도록 합니다.

(17행) 0을 누를 때까지 korea_number함수를 계속 호출시킵니다.

결과는 다음과 같습니다.

 

반응형