PYTHON/파이썬 기초

[PYTHON] 리스트

G허니 2024. 2. 25. 20:31

리스트는 여러 값을 묶어서 갖는 컨테이너 자료형으로, 다양한 데이터(숫자, 문자, 파일, 이미지 등)를 요소로 갖을 수 있습니다.

 

리스트 만들기

 

리스트는 대괄호([ ]) 안에 콤마로 구분해 값을 나열합니다. 빈 리스트를 만들거나, 여러 자료형의 값을 요소로 갖는 리스트, 리스트를 요소로 갖는 리스트(2차원 리스트) 등 다양한 형태의 리스트를 만들 수 있습니다.

# 빈 리스트 만들기
score1 = []
score2 = list()

# 여러 자료형을 요소로 갖는 리스트
mixed_list = [1, "apple", [1, 2, 3]]

# 리스트를 요소로 갖는 리스트
list_of_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

 

리스트 만들기 with range()


일련의 요소를 갖는 리스트를 만들 때는 range() 함수를 활용하면 편리합니다. range() 함수는 지정한 범위의 정수를 생성하며, 이를 list() 함수로 변환하면 리스트를 만들 수 있습니다.

 

# 0부터 9까지의 정수를 요소로 갖는 리스트
nums = list(range(10))

# 0부터 9까지 2씩 증가하는 정수를 요소로 갖는 리스트
nums = list(range(0, 10, 2))

 

 

리스트 인덱싱(Indexing)과 슬라이싱(Slicing)


리스트의 특정 요소를 찾을 때는 인덱싱을, 특정 범위의 요소를 찾을 때는 슬라이싱을 사용합니다. 인덱스는 0부터 시작하며, 음수를 사용하면 뒤에서부터 셀 수 있습니다.

# 인덱싱 예시
nums = [0, 1, 2, 3, 4, 5]
print(nums[0])  # 0
print(nums[-1])  # 5

# 슬라이싱 예시
print(nums[1:4])  # [1, 2, 3]

 

리스트 연산


리스트도 문자열과 마찬가지로 '+' 연산으로 결합하거나 '*' 연산으로 반복할 수 있습니다.

# 리스트 연산 예시
list1 = [1, 2, 3]
list2 = [4, 5, 6]
print(list1 + list2)  # [1, 2, 3, 4, 5, 6]
print(list1 * 2)  # [1, 2, 3, 1, 2, 3]

 

 

리스트 관련 메서드


리스트는 다양한 메서드를 제공하며, 이를 통해 리스트를 편리하게 조작할 수 있습니다. 주요 메서드로는 append(), insert(), extend(), remove(), pop(), clear() 등이 있습니다.

 

# 리스트 메서드 예시
nums = [1, 2, 3]
nums.append(4)  # [1, 2, 3, 4]
nums.insert(1, 1.5)  # [1, 1.5, 2, 3, 4]
nums.remove(1)  # [1.5, 2, 3, 4]
# extend() 메서드 예시
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list1.extend(list2)
print(list1)  # [1, 2, 3, 4, 5, 6]
# pop() 메서드 예시
nums = [1, 2, 3, 4, 5]
popped = nums.pop(1)
print(popped)  # 2
print(nums)  # [1, 3, 4, 5]
# del 키워드 예시
nums = [1, 2, 3, 4, 5]
del nums[1]
print(nums)  # [1, 3, 4, 5]

 

그 외에도 reverse(), sort() 을 사용하여 리스트 원소들을 반전시키거나 정렬할수있다.