Python

    [COS PRO 1급 Python] 1차 기출 문제 풀이

    COS PRO 1급 기출문제 - Python - 구름EDU YBMIT에서 시행하는 COS Pro 자격증으로 기출문제를 직접 풀어볼 수 있는 실습 위주의 강좌입니다. edu.goorm.io 문제 1) 음식전문점 운영 class DeliveryStore(metaclass=ABCMeta): @abstractmethod def set_order_list(self, order_list): pass @abstractmethod def get_total_price(self): pass class Food: def __init__(self, name, price): self.name = name self.price = price class PizzaStore(DeliveryStore): # 빈칸 채우기 (상속) def..

    [Python] 얕은 복사🥵 vs 깊은 복사🤗

    [Python] 얕은 복사🥵 vs 깊은 복사🤗

    💡 2차원 배열 초기화 할 때 주의! ( * 연산자 vs for문 이용) [얕은 복사 & 깊은 복사] 얕은 복사(shallow copy) 실제 객체 전체를 복사한 것이 아닌, 메모리 주소(참조)만 복사한 것! 즉, 실제로는 연결되어있는 상태 복사해도 같은 곳을 가리킴(참조) 변경 가능한(mutable) 객체일 때에만 얕은 복사를 함 대표적으로 = (대입), * (곱셈) 연산자, copy 모듈의 copy 함수가 해당 (+함수 매개변수도 대입에 해당) ex. arr2 = arr1 ex. arr = [ [0] * n] ] * n 깊은 복사(deep copy) 객체 전체를 모두 새롭게, 전혀 다른 별도의 객체로 생성 각각 독립적인 객체 복사 후 주소값 달라짐 슬라이싱([:]), for문을 통한 2차원 배열 생성..

    [Python] 삼항 연산자 (3항 연산자)

    [ 3항 연산자 ] C/C++에서 x = [조건]? a : b; 와 같이 사용하던 3항 연산자를 Python에서는 다음과 같이 사용하면 된다! # ex1 x = a if [조건] else b # True일 때의 값을 먼저 대입 후 if~else # ex2 [a, b] = [b, a] if a > b else [a, b] # 값 swap (unpacking) [ cf. 만약 if문만 쓰고 else문은 필요 없는 상황이라면? ] # ex3 [a, b] = [b, a] if a > b else break # 이건 error! (값 대입 상황) # ex4 print("hi") if a > b else break # 이건 ok (값 대입이 아닌 print 이므로) ex3과 같이 값을 대입하는 경우에는 else b..

    [Config] python과 python 패키지들 설치 위치 확인 방법

    pip install numpy.. 등으로 설치한 패키지들 설치 위치를 확인하고 싶을 때, Anaconda Prompt 실행 후, pip show 패키지명 을 해주면 된다! cf. 설치된 패키지들 리스트 확인 pip list cf. 주피터노트북에서 어떤 파이썬을 사용하고 있는지 확인 (python interpreter 경로 확인) python import sys sys.executable

    [Python] list() vs split()

    문자열을 분리하여 리스트로 만드는 방법 2가지 비교 list() : 문자열을 하나하나 분리하여 각 요소를 리스트에 넣어서 반환 split() : split함수 안의 인자를 기준으로 문자열을 분리하여 각 덩어리들을 리스트 요소로 넣어 반환 (하나하나 X) 단, 인자가 없으면 default : ' ' (공백) or '\n' (개행) 문자를 기준으로 덩어리로 쪼갬 list() split()