python

3편 Python 기초 문법: 반복문과 자료형

파이썬 티쳐 2024. 11. 11. 09:55

1. 리스트(List)와 튜플(Tuple)

1.1 리스트의 정의와 사용법

리스트는 여러 값을 하나의 변수에 저장할 수 있는 데이터 타입입니다. Python의 리스트는 변경 가능(mutable)하며, 다양한 자료형의 값을 혼합하여 저장할 수 있습니다.

fruits = ["apple", "banana", "cherry"]
print(fruits)  # 출력: ['apple', 'banana', 'cherry']

1.2 리스트에서 요소 추가, 제거, 수정

요소 추가: append()를 사용하여 리스트의 끝에 새로운 요소를 추가할 수 있습니다.

fruits.append("orange")
print(fruits)  # 출력: ['apple', 'banana', 'cherry', 'orange']

요소 제거: remove() 또는 pop()을 사용하여 특정 요소를 삭제하거나, 마지막 요소를 제거할 수 있습니다.

fruits.remove("banana")
print(fruits)  # 출력: ['apple', 'cherry', 'orange']
fruits.pop()
print(fruits)  # 출력: ['apple', 'cherry']

요소 수정: 리스트의 특정 위치에 있는 값을 수정할 수 있습니다.

fruits[1] = "grape"
print(fruits)  # 출력: ['apple', 'grape']

1.3 리스트 슬라이싱

리스트 슬라이싱을 사용하여 리스트의 일부분을 추출할 수 있습니다.

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

슬라이싱은 [시작:끝] 형식으로 사용되며, 끝 인덱스는 포함되지 않습니다.

1.4 튜플의 정의와 리스트와의 차이점

튜플은 리스트와 유사하지만, 변경할 수 없는(immutable) 자료형입니다. 즉, 한번 생성된 튜플의 요소는 수정, 추가, 삭제할 수 없습니다.

colors = ("red", "green", "blue")
print(colors)  # 출력: ('red', 'green', 'blue')

튜플은 요소의 불변성을 요구하는 데이터 구조에서 주로 사용됩니다. 예를 들어, 좌표나 설정값과 같은 경우 튜플이 적합합니다.

2. 반복문

2.1 for 반복문

for 반복문은 리스트나 튜플과 같은 시퀀스형 자료를 순회(iterate)하면서 각 요소에 대해 코드를 실행합니다.

for fruit in fruits:
    print(fruit)

위 코드는 fruits 리스트에 있는 모든 과일 이름을 하나씩 출력합니다.

2.2 while 반복문

while 반복문은 주어진 조건이 참일 동안 코드를 반복 실행합니다. 조건이 거짓이 되면 반복문이 종료됩니다.

count = 0
while count < 5:
    print(count)
    count += 1

이 코드는 count가 5보다 작을 때까지 반복 실행하며, count의 값을 증가시킵니다.

2.3 반복문에서의 break와 continue

break: 반복문을 강제로 종료하고 빠져나옵니다.

for num in range(10):
    if num == 5:
        break
    print(num)
# 출력: 0, 1, 2, 3, 4

continue: 반복문의 현재 루프를 건너뛰고, 다음 루프로 넘어갑니다.

for num in range(10):
    if num % 2 == 0:
        continue
    print(num)
# 출력: 1, 3, 5, 7, 9

2.4 중첩 반복문

반복문 안에 또 다른 반복문을 사용할 수 있습니다. 이를 중첩 반복문이라고 하며, 다차원 데이터를 다룰 때 유용합니다.

for i in range(3):
    for j in range(2):
        print(f"i: {i}, j: {j}")

이 코드는 ij 값을 반복적으로 출력합니다.

2.5 리스트와 반복문의 활용 예제: 리스트에서 요소 탐색

리스트와 반복문을 결합하여 특정 요소를 찾거나, 모든 요소에 대해 작업을 수행할 수 있습니다.

numbers = [10, 20, 30, 40, 50]
target = 30
for num in numbers:
    if num == target:
        print(f"{target}을 찾았습니다.")
        break

3. 리스트와 반복문을 활용한 프로그램

3.1 리스트를 이용한 간단한 합계 계산기 만들기

리스트 안의 숫자들을 더하는 프로그램을 작성합니다.

numbers = [1, 2, 3, 4, 5]
total = 0
for num in numbers:
    total += num
print(f"리스트의 합계는 {total}입니다.")  # 출력: 리스트의 합계는 15입니다.

3.2 요소를 순서대로 출력하는 프로그램 예제

리스트의 각 요소를 순서대로 출력하는 프로그램을 작성해봅니다.

names = ["Alice", "Bob", "Charlie"]
for index, name in enumerate(names):
    print(f"{index + 1}: {name}")
# 출력:
# 1: Alice
# 2: Bob
# 3: Charlie

위 예제에서는 enumerate() 함수를 사용하여 각 요소의 인덱스와 값을 동시에 출력할 수 있습니다.