Big Data/Python

[Python] 5. 컬렉션 - 리스트(list), 튜플(tuple)

nanee_ 2021. 6. 14. 23:19
728x90
반응형
SMALL

컬렉션

: 여러 값을 하나의 이름으로 묶어서 관리하는 자료형

 

컬렉션 생성함수 특징 예시
리스트 list() 추가, 수정, 삭제가 언제나 가능 a = [1, 2, 3]
튜플 tuple() 생성되고 나면 변경 불가능 a = (1, 2, 3)
세트 set() 중복된 값의 저장 불가능 a = {1, 2, 3}
딕셔너리 dict() 키 + 값으로 관리 a = {'age' : 25}

 

이 중에서 저장된 값들을 순서가 있는 컬렉션을 '시퀀스(Sequence)' 라고 부른다.

시퀀스에는 리스트, 튜플이 있다.

 

리스트

: 여러 값을 저장할 때 가장 많이 사용하는 자료형

 

저장하려는 값들을 자료형이 서로 다르더라도 하나의 리스트로 저장할 수 있다.

 

li = [100, 3.14, 'hello']

 

range( )  : 연속된 숫자를 생성하는 함수

 

list(range(10))
list(range(-4, 10 , 2))
list(range(10, 0, -1))

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]  # 0~9 의 수들이 리스트로 출력된다.

[-4, -2, 0, 2, 4, 6, 8]  # -4~9까지 +2 되는 수들이 리스트로 출력된다.

[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]  # 10~1까지 -1되는 수들이 리스트로 출력된다

 

 

- 리스트의 인덱싱(indexing)

li = [100, 3.14, 'hello']

print(li[0]) # 100
print(li[1]) # 3.13
print(li[2]) # hello

100

3.13

hello

 

- 리스트의 슬라이싱(slicing)

li = [10, 20, 30, 40, 50]
li[:3]

[10, 20, 30]

 

- 새로운 요소 추가

append() : 마지막 요소로 값을 추가

 

scores = [50, 40, 30]

scores.append(100) 
scores

[50, 40, 30, 100]

 

insert() : 원하는 인덱스에 값을 추가

 

scores = [50, 40, 30]

scores.insert(0, 90)
scores

[90, 50, 40, 30]

 

- 요소 삭제

pop() : 제거하는 요소를 출력시켜준다

           빈값 -> 마지막 요소를 제거, 원하는 인덱스를 제거할 수 있다.

 

scores = [50, 40, 30]

scores.pop()
scores.pop(0)

30

50

 

del : 제거하는 요소를 출력시켜주지 않고 바로 삭제한다.

 

scores = [50, 40, 30]

del scores[0]
scores

[40, 30] 

 

프린트 함수를 이용해 결과값을 확인해야한다.

 

 

 

튜플

: 지정된 값을 변경할 수 없는 리스트

리스트와 마찬가지로 인덱스, 슬라이싱이 가능하지만, 값의 추가, 수정,  삭제가 불가능하다.

 

표현법

소괄호( ) 또는 tuple( )

 

t1 = (1, 2, 3)
t2 = 1, 2, 3
t3 = tuple([100, 3.14, 'hello'])
t4 = (100)
t5 = (100,)

print(t1)
print(t2)
print(t3)
print(t4)
print(type(t4))
print(t5)
print(type(t5))

(1, 2, 3)

(1, 2, 3)

(100, 3.14, 'hello')

100

100

<class  'tuple'>

(100,)

<class 'tuple'>

 

 

 

 

 

 

728x90
반응형
LIST