Programming/Python

[Python] 파이썬 리스트 : 선언, 연산자, 요소 추가, 요소 제거, in / not in

728x90

 

 

리스트 (list)

- 여러 가지 자료를 모아 사용할 수 있게 해주는 특별한 형태의 자료

- 한 가지 또는 여러 종류의 자료형으로 구성할 수 있다

- 리스트 내부에 넣는 자료를 요소 (element)라고 부른다

- (예)

array = [273, 32, 103, "문자열", True, False]
print(array)
# [273, 32, 103, '문자열', True, False]

 

 

 

 

 

 


리스트 선언

- 대괄호[ ]에 자료를 쉼표로 구분해서 입력한다

- 인덱스는 1부터 시작

[요소, 요소, 요소 ... ]

 

 

 

 

 

 


리스트의 사용

 

1. (일반적인 사용) 인덱스로 접근

list_a = [273, 32, 103, "문자열", True, False]
list_a[0] = "변경"
print(list_a)
# ['변경', 32, 103, '문자열', True, False]

 

 

2. 음수 인덱스로 뒤에서부터 요소를 선택

list_a = [273, 32, 103, "문자열", True, False]
print(list_a[-1])  # False
print(list_a[-2])  # True
print(list_a[-3])  # 문자열

 

 

3. 리스트 접근 연산자를 이중으로 사용

- (예) list_a[3]의 "문자열을 꺼내서 0번째를 가져와 출력

list_a = [273, 32, 103, "문자열", True, False]
print(list_a[3])  # 문자열
print(list_a[3][0])  # 문

 

 

4. 리스트 안에 리스트 사용 가능

list_a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
print(list_a[1])        # [4, 5, 6]
print(list_a[1][1])     # 5

 

 

 

 

 

 


리스트 연산자 : 연결(+), 반복(*), len()

list_a = [1, 2, 3]
list_b = [4, 5, 6]

print("list_a + list_b = ", list_a + list_b)
# list_a + list_b =  [1, 2, 3, 4, 5, 6]

print("list * 3 = ", list_a * 3)
# list * 3 =  [1, 2, 3, 1, 2, 3, 1, 2, 3]

print("len(list_a) = ", len(list_a))
# len(list_a) =  3

 

 

 

 

 

 


리스트에 요소 추가하기

 

1. append() 함수

- 리스트 뒤에 요소를 추가

리스트명.append(요소)
list_a = [1,2,3]
list_a.append(4)
print(list_a)
# [1, 2, 3, 4]

 

 

2. insert() 함수

- 리스트의 중간에 요소를 추가

- 삽입한 위치의 요소는 뒤로 하나씩 밀린다

리스트명.insert(위치, 요소)
list_a = [1, 2, 3]
list_a.insert(1, 10)
print(list_a)
# [1, 10, 2, 3]

 

 

3. extend() 함수

- 한 번에 여러 요소를 추가

- 매개변수로 리스트를 입력하면, 원래 리스트 뒤에 매개변수인 리스트의 요소를 모두 추가한다

list_a = [1, 2, 3]
list_a.extend([4, 5, 6])
print(list_a)
# [1, 2, 3, 4, 5, 6]

- 리스트 연결 연산자와 차이

    ˙ 리스트 연결 연산자(+)와 extend()는 비슷한 형태로 동작

    ˙ 리스트 연결 연산자는 비파괴적(원본에 영향을 주지 않음)이지만, extend()는 파괴적이다

    ˙ 원본도 사용할 수 있도록 비파괴적으로 사용하는 것이 좋다

 

 

 

 

 

 


리스트 요소 제거하기

 

1. 인덱스로 제거하기

- del 키워드 : 리스트의 특정 인덱스에 있는 요소 제거. 범위를 지정하여 요소를 한꺼번에 제거하기 가능

del 리스트명[인덱스]

 

- pop() 함수 : 제거할 위치에 있는 요소를 제거. 매개변수를 입력하지 않으면 마지막 요소를 제거

 리스트명.pop(인덱스)

 

 

 

2. 값으로 제거하기

- remove() : 값을 지정해서 제거

리스트.remove(값)

- 리스트 내에 값이 여러 개 존재해도 가장 먼저 발견되는 하나만 제거

 

 

 

3. 모두 제거하기

- clear() 함수 : 리스트 내부의 요소를 모두 제거

리스트.clear()

 

 

 

 

 

 


리스트 내부에 있는지 확인하기

- in 연산자 : 특정 값이 리스트 내부에 있는지 확인

값 in 리스트

 

- not in 연산자 : 리스트 내부에 해당 값이 없는지 확인

값 not in 리스트

 

 

 

 

 

 

 

 

 

 

 

[참고서적] 혼자 공부하는 파이썬

 

혼자 공부하는 파이썬

이 책은 독학으로 프로그래밍 언어를 처음 배우려는 입문자가, 혹은 파이썬을 배우려는 입문자가 ‘꼭 필요한 내용을 제대로’ 학습할 수 있도록 구성했다. ‘무엇을’, ‘어떻게’ 학습해야

m.hanbit.co.kr

 

 

 

728x90