본문 바로가기
프로그래밍/PYTHON

파이썬 자료형의 이해와 활용 : 리스트 자료형

by AutoTechGuru 2023. 7. 18.
SMALL

안녕하세요, 파이썬을 배우고 있는 여러분! 파이썬을 새로 시작하셨나요? 아니면 잠시 멈췄다가 다시 시작하려고 하시나요? 아마 처음에는 모든 것이 새롭고, 때로는 압도적일 수 있죠. 저희 모두 그 경험을 했습니다. 하지만 걱정하지 마세요. 파이썬은 학습하기 정말 쉬운 언어입니다. 그리고 오늘, 여러분들과 함께 학습할 주제는 '리스트'입니다.

 

프로그래밍을 하다 보면, 같은 종류의 여러 값을 하나의 변수에 넣어 관리하고 싶을 때가 있습니다. 예를 들어, 친구들의 이름을 저장하거나, 학생들의 성적을 관리하거나, 여행지의 좌표를 저장하는 경우입니다. 이때 우리는 '리스트(list)'라는 자료형을 사용할 수 있습니다.

 

리스트는 어떻게 만들고 사용할까?

리스트는 대괄호([]) 안에 쉼표(,)로 구분된 값들의 모음으로 생각하면 됩니다. 예를 들어, 다음과 같이 생성할 수 있습니다.

 

# 빈 리스트 생성
empty_list = []
print(empty_list) # 출력: []


# 정수가 들어있는 리스트 생성
numbers = [1, 2, 3, 4, 5]
print(numbers) # 출력: [1, 2, 3, 4, 5]


# 문자열이 들어있는 리스트 생성
names = ["Anna", "Elsa", "Olaf"]
print(names) # 출력: ['Anna', 'Elsa', 'Olaf']


# 다양한 타입이 혼합된 리스트 생성
mixed = [1, "one", 2.0]
print(mixed) # 출력: [1, 'one', 2.0]

리스트의 인덱싱과 슬라이싱

'인덱싱'이란, 리스트에서 특정 위치의 값을 참조하는 것을 말합니다. 파이썬에서는 인덱스를 사용하여 리스트의 특정 위치의 값을 얻을 수 있습니다. 인덱스는 0부터 시작합니다.

 

names = ["Anna", "Elsa", "Olaf"]
print(names[0]) # 출력: Anna
print(names[1]) # 출력: Elsa
print(names[2]) # 출력: Olaf


# 파이썬에서는 음수 인덱스를 사용해서 뒤에서부터 원소를 참조할 수 있습니다.
print(names[-1]) # 출력: Olaf

'슬라이싱'은 리스트에서 특정 범위의 값을 추출하는 것입니다.

 

numbers = [1, 2, 3, 4, 5]
print(numbers[1:4]) # 출력: [2, 3, 4]

리스트 연산하기

리스트는 '+', '*' 연산자를 이용해 더하거나 반복시킬 수 있습니다. 또한, len() 함수를 이용해서 리스트의 길이를 알 수 있습니다.

 

# 리스트 더하기
list1 = [1, 2, 3]
list2 = [4, 5, 6]
print(list1 + list2) # 출력: [1, 2, 3, 4, 5, 6]


# 리스트 반복하기
list1 = [1, 2, 3]
print(list1 * 3) # 출력: [1, 2, 3, 1, 2, 3, 1, 2, 3]


# 리스트 길이 구하기
list1 = [1, 2, 3]
print(len(list1)) # 출력: 3

리스트의 수정과 삭제

리스트는 가변적인(mutable) 자료형입니다. , 생성된 후에도 값의 수정, 추가, 삭제가 가능합니다.

 

# 리스트의 값 수정하기
names = ["Anna", "Elsa", "Olaf"]
names[0] = "Kristoff"
print(names) # 출력: ['Kristoff', 'Elsa', 'Olaf']


# del 함수를 사용해 리스트 요소 삭제하기
del names[0]
print(names) # 출력: ['Elsa', 'Olaf']

리스트 관련 함수

리스트를 다루기 위한 다양한 함수들이 존재합니다.

 

list1 = [1, 3, 5, 2, 4]


# 리스트에 요소 추가하기
list1.append(6)
print(list1) # 출력: [1, 3, 5, 2, 4, 6]


# 리스트 정렬하기
list1.sort()
print(list1) # 출력: [1, 2, 3, 4, 5, 6]


# 리스트 뒤집기
list1.reverse()
print(list1) # 출력: [6, 5, 4, 3, 2, 1]


# 값의 인덱스 반환하기
print(list1.index(4)) # 출력: 2


# 특정 위치에 요소 삽입하기
list1.insert(2, 7)
print(list1) # 출력: [6, 5, 7, 4, 3, 2, 1]


# 리스트에서 특정 요소 제거하기
list1.remove(7)
print(list1) # 출력: [6, 5, 4, 3, 2, 1]


# 리스트에서 특정 위치의 요소를 끄집어내기
print(list1.pop(2)) # 출력: 4
print(list1) # 출력: [6, 5, 3, 2, 1]


# 리스트에서 특정 요소의 개수 세기
print(list1.count(1)) # 출력: 1


# 리스트 확장하기
list1.extend([8, 9, 10])
print(list1) # 출력: [6, 5, 3, 2, 1, 8, 9, 10]

이렇게 리스트는 우리가 프로그래밍을 하면서 자주 사용하는 유용한 도구입니다. 리스트를 이용해 다양한 문제를 해결할 수 있을 것입니다. 다음 시간에는 더 다양한 파이썬의 특징을 알아볼 예정입니다. 그럼, 행복한 코딩되세요

LIST