개발/AI&Chatbot

Day02. 파이썬 입문 - list

honeypeach 2025. 10. 14. 11:55

🐍 파이썬 기초 문법 완전 정리 📘

🔸 6. 튜플 (Tuple)

리스트처럼 여러 값을 담지만, 수정이 불가능한(immutable) 자료형입니다.
데이터를 보호하거나, 변하지 않는 값을 다룰 때 사용합니다.

t = (1, 2, 3)
print(t[0])  # 1
# t[0] = 4  ❌ 오류 발생 (수정 불가)

구분설명예시

생성 소괄호 () 사용 t = (1, 2, 3)
접근 인덱스로 접근 t[1] → 2
수정 불가 변경, 추가, 삭제 모두 불가
활용 예 좌표, 설정값 등 location = (37.5, 126.9)

🔸 7. 딕셔너리 (Dictionary)

Key: Value 쌍으로 데이터를 관리합니다.
“이름표가 붙은 리스트”로 생각하면 이해가 쉽습니다.

person = {"name": "허니피치", "age": 25}
print(person["name"])  # 허니피치
person["age"] = 26

메서드설명예시

keys() 모든 키 반환 person.keys()
values() 모든 값 반환 person.values()
items() (key, value) 쌍 반환 for k, v in person.items():
get(key) 안전하게 값 접근 person.get("job", "없음")

🔸 8. 함수 (Function)

반복되는 코드를 묶어 재사용성 가독성을 높입니다.

def add(a, b):
    return a + b

result = add(3, 5)
print(result)  # 8

구분설명예시

정의 def 함수명(매개변수): def greet(name):
반환값 return으로 결과 돌려줌 return a + b
기본값 매개변수에 기본 설정 def say(msg="안녕"):
여러 값 반환 튜플로 여러 값 반환 return x, y

🔸 9. 클래스 (Class)

현실 세계의 사물을 객체로 표현한 설계도입니다.
속성과 기능(메서드)을 묶어 관리합니다.

class Dog:
    def __init__(self, name):
        self.name = name
    def bark(self):
        print(f"{self.name}이(가) 멍멍 짖습니다!")

dog1 = Dog("피치")
dog1.bark()

용어설명예시

클래스 설계도 class Dog:
객체 실제 인스턴스 dog1 = Dog()
생성자 __init__()로 속성 초기화 self.name = name
메서드 클래스 내부 함수 def bark(self):

🔸 10. 파일 입출력 (File I/O)

데이터를 파일로 저장하거나 불러올 때 사용합니다.

# 쓰기
with open("data.txt", "w", encoding="utf-8") as f:
    f.write("Hello Python!")

# 읽기
with open("data.txt", "r", encoding="utf-8") as f:
    print(f.read())

모드설명

"r" 읽기 전용
"w" 새로 쓰기 (덮어씀)
"a" 이어 쓰기
"rb"/"wb" 바이너리 파일 (이미지, 영상 등)

🔸 11. 예외 처리 (Try - Except)

코드 실행 중 오류가 나더라도 프로그램이 멈추지 않게 도와줍니다.

try:
    num = int(input("숫자 입력: "))
    print(10 / num)
except ZeroDivisionError:
    print("0으로 나눌 수 없습니다.")
except ValueError:
    print("숫자만 입력해주세요.")
finally:
    print("프로그램 종료")

구문설명

try 오류가 발생할 수 있는 코드
except 오류 발생 시 실행
finally 항상 실행되는 코드
raise 일부러 오류 발생시킴

🔸 12. 모듈과 패키지 (Module & Package)

다른 파일에서 함수나 클래스를 불러와 사용하는 방법입니다.

import math
print(math.sqrt(16))  # 4.0

구분설명예시

모듈 .py 파일 하나 import math
함수 사용 모듈명.함수() math.pi
직접 만들기 mymodule.py 생성 → import mymodule  
패키지 여러 모듈을 모은 폴더 import package.module

🧾 전체 요약 한눈에 보기

단계주제핵심 키워드

1 출력/입력 print, input
2 변수/자료형 int, str, bool
3 조건문 if, elif, else
4 반복문 for, while, break
5 리스트 append, remove, len
6 튜플 수정 불가, ()
7 딕셔너리 key:value, items()
8 함수 def, return
9 클래스 __init__, self
10 파일입출력 open(), with
11 예외처리 try-except
12 모듈 import, math

학습한 while문을 claude.ai 활용하여 만든 단어장이다.

 

활용한 코드는 다음과 같다. (python)

# 4. 단어를 추가하기 위한 리스트가 필요
words = []

# 3. 빈 문자열에 대한 예외 처리 (잘못 입력된 문자열)
while True: # 조건이 만족할 때는 계속 실행해라!
  word = input("단어를 입력하세요 (종료 : exit를 입력하세요)")

  if word == "exit":
    break # exit를 입력 받으면 종료해라!

  elif word == '':
    print("공백은 입력할 수 없습니다.")

  # 4. 위의 조건에 부합하면 -> 그대로 단어를 저장하는 (리스트에) 구분이 필요
  # append를 사용해서 단어를 추가
  else: 
    words.append(word) # 내부에서 작동
    print(f"{word}가 추가되었습니다.") # 고객에게 표현
728x90