-파이썬 데이터 타입인 컨테이너 타입 중 하나인 list에 대해 알아보며, 기타 다른 컨테이너 타입도 간단하게 알아본다.
-공식 문서와 강의 학습을 함께 하였다.
-생활코딩 파이썬 강의를 바탕으로 학습 및 보충학습 하였다.
-파이썬은 3.9.2 ver를 사용한다.
파이썬에는 크게 다음과 같은 타입이 있다.
- 문자열 타입
- 숫자 타입 : 정수(int), 실수(float), 복소수(complex)
- 컨테이너 타입 : 리스트(list), 튜플(tuple), 딕셔너리(dictionary)
여기서는 컨테이너 타입에 대해 집중적으로 알아보려고 한다.
리스트(list)
변수 하나에는 하나의 값이 존재할 수 있다. 한 변수에 2개 이상의 값을 담기 위해서는 컨테이너 타입을 사용해야 한다. 여기서는 컨테이너 타입 중 list타입을 소개한다. list타입은 '[]'안에 값들이 들어가며 값을 변경할 수 있다. 값은 숫자타입이나 문자열타입 모두 들어갈 수 있다. 여러 사용방법이 있지만 공식문서와 강의를 기반으로 학습한 부분만 예제로 올린다. 공식문서는 다음 링크를 참고하였다.
docs.python.org/3/tutorial/introduction.html#lists
squares = [1,4,9,16,25] # list타입으로 선언
#엘리먼트(값) 가져오기 : 값의 순서인 인덱스를 사용하며 순서는 0부터 시작(0,1,2,3,4)
print(squares[0]) # 1
print(squares[-2]) # 16
#슬라이싱(:) 사용하기 : 리스트 안의 특정 값이나 값들을 잘라서 반환해준다
print(squares[1:3]) # [4,9]
print(squares[3:]) # [16,25]
#concatenation : 합치기
print(squares + [77,88,99]) # [1,4,9,16,25,77,88,99]
#값 변경 : immuatable(변경불가)한 String과 다르게 list는 muatable(변경가능)
squares[0] = 14
print(squares) # [14,4,9,16,25]
#리스트 맨 뒤에 값 더하기
squares.append(65)
print(squares) # [14,4,9,16,25,65]
#엘리먼트(값) 삭제
del squares[0]
print(squares) #[4,9,16,25,65]
선언은 자바의 배열을 선언하는 것 처럼 저렇게 [1,4,9,16,25]방식으로 선언한다.
그리고 슬라이싱의 경우 squares[1:3]처럼 [인덱스번호a:인덱스번호b]로 넣어주면 a부터 b의 직전값까지 잘라서 반환한다.
튜플(tuple)
튜플은 강의에서 아직 배우지 않았지만 공식문서로 간단하게 학습해보았다. 일단 list와의 큰 차이점은 선언방식과 mutable 여부인 것 같다. list는 '[]'로 선언하지만, 튜플은 '()'방식으로 선언한다. 기본적인 사용법은 list와 비슷하다.
또한 튜플은 immutable이다. 즉, 값을 변경할 수가 없다. list는 squares[0] = 50 같은 방식으로 리스트 안의 값을 변경할 수 있지만 튜플은 에러가 발생한다. 간단한 실행 예제는 아래를 참고하기 바란다.
#튜플 선언
test = (1,2,3)
print(test) #(1,2,3)
#튜플끼리 합치기
test2 = (4,5,6)
print(test+test2) # (1,2,3,4,5,6)
#튜플의 값 가져오기(인덱스 사용)
print(test2[0]) #4
#튜플은 immuatable이기 때문에 값 수정이 불가(에러발생)
test2[0] = 10
print(test2) #에러 발생 : 'tuple' object does not support item assignment
딕셔너리(dictionary)
list처럼 단순히 값만 담아서 인덱스로 값들을 가져오는 것이 아니라, 값의 이름(변수명)으로 가져올 수 있도록 만들 수가 있다. 이를 위해 딕셔너리 타입을 사용할 수 있다. 다음과 같이 사용한다.
변수명 = {값이름1 : 값1, 값이름2 : 값2...}
값에 각각의 값이름을 붙일 수 있다. 선언은 '{}'으로 선언한다. 값이름을 변수명(variable), 식별자(identifier)라고 한다.
#딕셔너리 선언
dic = {'name':'kim', 'age':20}
print(dic) #{'name':kim, 'age':20}
#나이 가져오기
print(dic['age']) #20
#이름 가져오기
print(dic['name']) #kim
위와 같이 변수명을 통해 변수값을 가져올 수 있다.
'개발자 일지 > Phython' 카테고리의 다른 글
[파이썬 기초]form 데이터 전송 및 처리방법(CRUD-Delete) (0) | 2021.03.24 |
---|---|
[파이썬 기초]form 데이터 전송 및 처리방법(CRUD-Update) (0) | 2021.03.24 |
[파이썬 기초]form 데이터 전송 및 처리방법(CRUD-Create,Read) (0) | 2021.03.21 |
[파이썬 기초]반복문(for,range,while) 및 반복문 활용 (0) | 2021.03.19 |
[파이썬 기초]open() 함수로 파일 읽기 (2) | 2021.03.15 |
[파이썬 기초]제어문 - 조건문(if)과 논리연산자(and,or) (0) | 2021.03.14 |
[파이썬 기초]데이터타입-Boolean다루기 (0) | 2021.03.14 |
[파이썬 기초]URL 쿼리스트링(Query String) 가져오기 (0) | 2021.03.12 |