데이터 스쿨 2주차 학습내용 정리 - 1

호진·2023년 11월 11일
0

AI_스쿨

목록 보기
3/51

제로베이스 데이터 스 2주차 학습 내용 정리

이번 주차에서는 팀 스터디와 파이썬 중급과정을 배웠고 이를 응용한 연습문제를 풀었습니다.

함수, 모듈, class, 예외처리, let's go

함수

함수는 코드의 재사용성을 높이기 위한 기능입니다. 함수는 특정 기능을 수행하는 코드의 집합으로, 이름을 지정하여 호출할 수 있습니다. 함수를 사용하면 코드를 반복해서 작성하지 않고도 원하는 기능을 수행할 수 있습니다.

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


print(sum(1, 2))

위 코드는 두 개의 숫자를 더하는 함수 sum()을 정의하고 있습니다. sum() 함수는 a와 b라는 두 개의 인자를 받고, a와 b의 합을 반환합니다.

모듈

모듈은 함수, 변수, 클래스 등을 모아놓은 파일입니다. 모듈을 사용하면 코드를 분리하여 관리하고, 재사용할 수 있습니다.

# 파일이름은 math.py

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

def subtract(a, b):
    return a - b

def multiply(a, b):
    return a * b

def divide(a, b):
    return a / b

위 코드는 수학 관련 함수를 모아놓은 모듈 math.py입니다. add(), subtract(), multiply(), divide() 함수는 각각 두 개의 숫자를 더하고, 빼고, 곱하고, 나누는 기능을 수행합니다.

# 파일이름 main.py

import math

if __name__ == '__main__'
	print('메인 함수임')
print(math.add(1, 2))
print(math.subtract(1, 2))
print(math.multiply(1, 2))
print(math.divide(1, 2))

위 코드는 math.py 모듈을 불러와서 사용하고 있습니다.
name를 통해 이 함수가 메인 함수인지 import를 통해 불러와진 함수인지 판단하고 math.add(), math.subtract(), math.multiply(), math.divide() 함수를 호출하여 결과를 출력합니다.

클래스

클래스는 객체를 생성하기 위한 기능입니다. 클래스는 객체의 속성과 행동을 정의합니다.

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def say_hello(self):
        print("안녕하세요, 저는 {}입니다.".format(self.name))

person = Person("홍길동", 30)
person.say_hello()

위 코드는 Person 클래스를 정의하고 있습니다. Person 클래스는 name과 age라는 속성을 정의하고, say_hello()라는 행동을 정의합니다.

person 변수는 Person 클래스로부터 생성된 객체입니다. person 변수는 name 속성의 값을 "홍길동"으로, age 속성의 값을 30으로 초기화합니다. person.say_hello() 함수는 person 객체의 say_hello() 행동을 호출합니다.

예외처리

예외처리는 프로그램의 실행 중에 발생하는 오류를 처리하기 위한 기능입니다. 예외처리를 사용하면 오류가 발생하더라도 프로그램의 실행을 중단하지 않고, 오류를 처리할 수 있습니다.

try:
    x = 1 / 0
except ZeroDivisionError:
    print("0으로 나눌 수 없습니다.")

print("프로그램 종료")

위 코드는 0으로 나누는 코드를 실행합니다. 이 코드는 ZeroDivisionError 예외를 발생시킵니다. try except 구문은 try 블록에서 오류가 발생하면 except 블록을 실행합니다. 따라서 위 코드는 except 블록을 실행하여 "0으로 나눌 수 없습니다." 메시지를 출력합니다.

텍스트파일 읽고 쓰기

with open as 구문은 파일의 객체를 열고, 사용이 끝나면 자동으로 닫는 구문입니다. 이 구문을 사용하면 파일의 객체를 열고 닫는 코드를 별도로 작성하지 않아도 되므로, 코드의 가독성을 높이고 오류를 줄일 수 있습니다.

with open as 구문의 기본 형식은 다음과 같습니다.

with open(파일명, 모드) as 파일객체:

    # 파일객체를 사용하여 작업 수행

파일명은 파일의 경로와 이름을 지정합니다. 모드는 파일의 열림 모드를 지정합니다. 파일의 열림 모드는 r(읽기), w(쓰기), a(추가) 등을 사용할 수 있습니다.

with open as 구문의 예시는 다음과 같습니다.


# 파일의 내용을 읽기
with open("data.txt", "r") as f:
    content = f.read()
    print(content)

# 파일에 내용을 쓰기
with open("data.txt", "w") as f:
    f.write("Hello, Python!")

# 파일에 내용을 추가하기
with open("data.txt", "a") as f:
    f.write("\nGoodbye, Python!")

위 코드는 data.txt 파일을 열고, 내용을 읽고, 쓰고, 추가하는 예시입니다.

이상으로 파이썬의 함수, 모듈, 클래스, 예외처리, 텍스트 파일 읽고 쓰기에 대해서 정말 간략하게 알아보았습니다. 깊게 알면 지옥이다.

이번주는 정말 쉽지 않은 주였다. 지금까지 파이썬을 배우면서 class와 예외처리 파트는 정말 얕게 이런것도 있구나 정도로 넘어갔기 때문에 연습문제를 풀면서 지난주처럼 먼저 풀어보고 진행하는 방식을 한번도 시도하지 못했기 때문이다.

또 지금까지 import 명령어를 아무생각없이 '라이브러리를 불러오는것' 정도로 생각하고 사용해왔기 때문에 모듈에 대한 개념을 확실하게 이해한거 같은 느낌이 든다.

분량이 길어져서 연습문제 코드리뷰는 다음 게시물에서 이어 하겠습니다

profile
중요한 건 꺽였는데도 그냥 하는 마음

0개의 댓글