Python/파이썬 기초 강의(2024)★

파이썬: 리스트 자료형 list

코딩ABC 2024. 10. 26. 09:38
반응형

파이썬에서 list는 가장 자주 사용되는 자료형 중 하나로, 여러 개의 값을 순서대로 저장할 수 있는 데이터 구조입니다. 리스트는 [ ] 대괄호 안에 요소를 넣어 만들 수 있고, 다양한 방법으로 요소를 조작할 수 있습니다. 아래 예제들을 통해 리스트의 다양한 기능을 알아보겠습니다.

 

>> 리스트 list 
> 튜플 tuple   - https://coding-abc.kr/326
> 딕셔너리 dictionary  - https://coding-abc.kr/327
> 집합 set  - https://coding-abc.kr/328

 

1. 리스트 생성 및 기본 연산

# 리스트 생성
fruits = ["apple", "banana", "cherry"]
print(fruits)

(Output)

['apple', 'banana', 'cherry']

 

리스트 길이 구하기: len(리스트)

fruits = ["apple", "banana", "cherry"]
print(len(fruits))

(Output)

3

 

리스트에 값 추가하기: append 메서드

fruits = ["apple", "banana", "cherry"]
fruits.append("orange")
print(fruits)

(Output)

['apple', 'banana', 'cherry', 'orange']

 

특정 위치에 값 삽입하기: insert 메서드

fruits = ["apple", "banana", "cherry", "orange" ]
fruits.insert(1, "grape")
print(fruits)

(Output)

['apple', 'grape', 'banana', 'cherry', 'orange']

 

2. 리스트 요소 접근 및 슬라이싱

fruits = ['apple', 'grape', 'banana', 'cherry', 'orange']

# 특정 요소에 접근
print(fruits[0])
print(fruits[-1])

# 리스트 슬라이싱
print(fruits[1:3])

(Output)

apple

orange  (뒤에서 첫 번째)

['grape', 'banana']

 

fruits[1:3]  # 인덱스 1부터 3 이전까지(인덱스 3은 포함되지 않음)

fruits[1:]  # 덱스 1부터 끝까지

fruits[:3]  # 맨 처음부터 인덱스 3 이전까지

 

3. 리스트 요소 삭제

# 특정 요소 삭제 (`remove` 메서드)
fruits.remove("banana")
print(fruits)

# 인덱스로 요소 삭제 (`pop` 메서드)
fruits.pop(2)  # 인덱스 2의 요소를 꺼내오고, 해당 요소를 삭제함.  pop()은 마지막 요소를 꺼내오고 삭제함
print(fruits)

# 모든 요소 삭제 (`clear` 메서드)
fruits.clear()
print(fruits)

(Output)

['apple', 'grape', 'cherry', 'orange']

['apple', 'grape', 'orange']

[]

 

4. 리스트 반복문 사용하기

fruits = ["apple", "banana", "cherry"]

# for 반복문
for fruit in fruits:
    print(fruit)

(Output)

 

5. 리스트 정렬

numbers = [5, 2, 9, 1, 5, 6]

# 오름차순 정렬
numbers.sort()
print(numbers)  # [1, 2, 5, 5, 6, 9]

# 내림차순 정렬
numbers.sort(reverse=True)
print(numbers)  # [9, 6, 5, 5, 2, 1]

(Output)

[1, 2, 5, 5, 6, 9]

[9, 6, 5, 5, 2, 1]

 

6. 리스트 합치기

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

# + 연산자로 합치기
combined = list1 + list2
print(combined)  # [1, 2, 3, 4, 5, 6]

# `extend` 메서드로 합치기
list1.extend(list2)
print(list1)  # [1, 2, 3, 4, 5, 6]

(Output)

[1, 2, 3, 4, 5, 6]

[1, 2, 3, 4, 5, 6]

 

7. 중첩 리스트 (2차원 리스트)

# 2차원 리스트 생성
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

# 특정 요소 접근
print(matrix[0][1])  # 2
print(matrix[2][2])  # 9

# 2차원 리스트 순회하기
for row in matrix:
    for value in row:
        print(value, end=" ")  # 1 2 3 4 5 6 7 8 9
    print()

(Output)

2

9

1 2 3

4 5 6

7 8 9

 

8. 리스트 내장 함수 예제

numbers = [10, 20, 30, 40, 50]

print(sum(numbers))  # 합계: 150
print(max(numbers))  # 최댓값: 50
print(min(numbers))  # 최솟값: 10

(Output)

150

50

10

 

9. 리스트를 문자열로 변환

words = ["Hello", "world"]
sentence = " ".join(words)
print(sentence)  # 'Hello world'

(Output)

Hello world

 

10. 리스트 컴프리헨션 (List Comprehension)

# 1부터 5까지의 제곱을 갖는 리스트 생성
squares = [x**2 for x in range(1, 6)]
print(squares)  # [1, 4, 9, 16, 25]

# 조건을 추가한 리스트 컴프리헨션
even_squares = [x**2 for x in range(1, 6) if x % 2 == 0]
print(even_squares)  # [4, 16]

(Output)

[1, 4, 9, 16, 25]

[4, 16]

파이썬, 리스트

 

이 외에도 list는 다양한 내장 메서드와 함께 유연하게 사용할 수 있습니다. append, extend, remove, sort, reverse 등 여러 기능을 활용하여 리스트를 조작할 수 있습니다.

반응형