2021. 6. 4. 11:06ㆍpython
데이터 타입의 종류
변수(데이터를 저장하는 공간)의 데이터 타입은 크게 두 가지로 나뉜다.
단일 값을 저장하는 데이터 타입
1) integer : 정수형
2) float : 실수형
3) string : 문자형
4) boolean : 불리언
여러개의 값을 저장하는 데이터 타입
1) list : [ ] 배열
2) tuple : ( ) 튜플
3) dictionary : { } 사전
4) set : { } 집합
1. 리스트
- [ ] 대괄호 / list( )로 표현
- 여러 값을 동일한 변수에 순차적으로 저장할 수 있는 용도의 자료형
- 서로 다른 데이터 타입을 가질 수 있다.
- 중첩할 수 있다.
리스트의 데이터 타입을 확인해 보자 :
x = []
x1 = list()
type(x)
type(x1)
type(x)로 변수x의 데이터타입을 확인해본 결과 list 라는 결과가 나오는 것을 알 수 있다.
리스트 생성하기 :
x2 = [10, 20, 30]
x2
type(x2)
len(x2) # 리스트안에 몇개가 들어있는지 확인
변수 x2 안에 배열로서 10,20,30 의 값이 들어가있고, len으로 리스트안에 3개에 데이터가 있음을 알 수 있다.
리스트 인덱싱(indexing) 하기 :
x2[0]
x2[-1]
10,20,30 이 들어있는 x2에서 순서를 메길때 1번째 부터 시작하는 것이 아닌 0번쨰 부터 시작한다.
인덱싱이란 이렇게 데이터에 위치를 숫자로 확인하는 것을 말한다.
리스트 슬라이싱(slicing) 하기 :
x2[0:2] #[시작 : 끝-1]
x2[:-1]
x2[-1:]
슬라이싱이란 0번째데이터 1번째 데이터를 가져오는 것처럼 특정 부분을 가져오는 것을 말한다.
위예시처럼 배열에 있는 데이터 중 0번쨰부터 1번째까지 데이터를 가져올 수 있다.
주의 할 점은 x2[0:2] 에서 2는 2번째 자리가 아니고 2번째 자리 앞인 1번째 자리를 말한다.
리스트 값 수정하기 :
x2 = [10, 20, 30]
x2[0]
x2[0]= 100
x2[1:3]
x2[1:3] = [200, 300]
만약에 배열안에 데이터 값을 수정하고 싶다면 위처럼 수정하고 싶은 데이터의 인덱스를 활용하여 수정한다.
응요하여 슬라이싱으로도 배열안에 데이터 값을 수정 할 수 있다.
리스트 조작 관련 함수
append(넣을 값) : 리스트 변수 끝에 값을 추가하는 방법
x2.append(400)
x2
insert(인덱스번호, 넣을 값) : 인덱스 번호를 사용하여 특정 위치에 값을 입력하는 방법
x2.insert(4, 500)
extend(붙일 리스트) : 기존 리스트 변수에 다른 리스트 변수를 이어 붙이는 방법
x3 = [600, 700]
x2.extend(x3)
+를 이용해서 리스트 변수를 결합할 수 있다.
x4 = [800, 900, 1000]
x5 = x2+x4
x5
pop( ) : 리스트 변수에 있는 값 중에 마지막 값을 제거하는 방법
pop(인덱스 번호) : 특정한 인덱스 번호를 기준으로 제거하는 방법
x5.pop( )
x5
x5[4]
x5.pop(4)
x5
위와 동일한 기능 (del 사용)
del x5[0]
index() : 리스트 안에서 특정 단어를 찾고싶을땐 index만 쓸 수 있다.
drink = ['콜라','사이다','콜라','환타','사이다','콜라']
drink.index('콜라')
drink.find('콜라') # 오류남
remove('문자') : 리스트 변수에 값을 기준으로 삭제하는 방법
drink.remove('콜라') # 첫번째 '콜라' 삭제
drink
drink.remove('콜라') # 두번째 '콜라' 삭제
drink
clear() : 리스트 변수 안에 있는 모든 값을 지우는 방법
x.clear()
x
x = [1, 2, 3]
dir() : 메모리에 생성된 변수 확인
id() : 메모리 주소 확인
dir(x)
id(x)
dir() 로 메모리에 변수 x 가 있다는 것을 확인 후 id()로 메모리 주소를 확인한다.
x = [1, 5, 3, 4, 2] # 리스트안엔 입력한 순서대로 들어간다.
sort() : 리스트변수 안에 값을 기준으로 정렬 (기본은 오름차순) / 미리보기
x.sort()
x
sort(reverse = True) : 내림차순 정렬
x.sort(reverse = True)
x
sorted() : 정렬값을 저장할 수 있음
x = [1, 5, 3, 4, 2]
x1 = sorted(x)
x1
x2 = sorted(x, reverse = True) #내림차순
x2
reverse() : 리스트 변수 값을 반대로 뒤집을때 / 바뀐값이 변수에 바로 적용된다.
x[::-1] # 미리보기
x.reverse()
중첩 리스트
x = [1, 2, 3, ['a','b','c'], 4, 5]
type(x)
type(x[0])
x[3]
type(x[3])
배열안에 1,2,3,4,5 의 데이터 타입은 int이지만, 3번째인 [a','b','c']의 데이터타입은 list이다.
즉 배열안에 배열도 가능하다.
x = [1, 2, 3, ['a','b','c'], 4, 5]
type(x[3][0]) # 중첩리스트의 데이터 타입 확인
x[3][0] # [][] : 중첩리스트 안의 값을 인덱싱할때
x[3][0:2] # [][:] : 중첩리스트 안의 값을 슬라이싱할때
x[3].append('d') # 3번인덱스 안에 'd'를 이어붙이기
x[3]
del x[3][0] # 충첩리스트 삭제
x[3]
x[3].insert(0, 'a') # 중첩리스트에 값을 이어붙이기
x[3]
x[3][0] = x[3][0].upper() # 중첩리스트 문자값 대문자로 변환
x[3]
x[0] = x[0]*10
x
x[3][0] = x[3][0]*2 # 중첩리스트 문자값 반복 / 숫자값 곱셈
x
변수x의3번째에 있는 데이터값 ['a',b','c'] 중에 0번째는 'a'이고 이것에 데이터 타입은 stirng이기때문에 str이 출력된다.
*리스트 함수 정리*
[리스트 함수] | |||
append( ) |
리스트 변수 끝에 값을 추가하는 방법 | ||
insert( , ) | 인덱스 번호를 사용하여 특정 위치에 값을 입력하는 방법 |
||
extend( ) | 기존 리스트 변수에 다른 리스트 변수를 이어 붙이는 방법 |
||
pop( ) | 리스트 변수에 있는 값 중에 마지막 값을 제거하는 방법 |
||
pop(인덱스 번호) | 특정한 인덱스 번호를 기준으로 제거하는 방법 (= del) |
||
index( ) | 리스트 안에서 특정 단어를 찾고 싶을땐 index만 쓸 수 있다. |
||
remove('문자') | 리스트 변수에 값을 기준으로 삭제하는 방법 |
||
clear( ) | 리스트 변수 안에 있는 모든 값을 지우는 방법 |
||
dir() | 메모리에 생성된 변수 확인 | ||
id() | 메모리 주소 확인 | ||
sort() | 리스트변수 안에 값을 기준으로 정렬 (기본은 오름차순) / 미리보기 |
||
sort(reverse = True) | 내림차순 정렬 | ||
sorted() | 정렬값을 저장할 수 있음 | ||
reverse() | 리스트 변수 값을 반대로 뒤집을때 / 바뀐값이 변수에 바로 적용된다. |
'python' 카테고리의 다른 글
Python 45 - 파이썬 알아두면 좋은 Boolean 타입 / 변수 복제 방법 (0) | 2021.06.06 |
---|---|
Python 44 - 파이썬 데이터 타입의 종류 - 튜플(Tuple), 딕셔너리(Dictionary), 세트(Set) (0) | 2021.06.05 |
Python 42 - 파이썬으로 무엇을 할 수 있을까? (0) | 2021.06.03 |
Python 41 - 파이썬 의미, 창시자, 역사 (0) | 2021.06.02 |
Python 40 - 파이썬 주요 라이브러리 (python Library (0) | 2021.06.01 |