Python/수업 10

itertools, collections

itertools 반복자(iterator) 관련 다양한 함수 제공 count() 지정된 값에서 시작한 시퀀스를 생성하는 함수 import itertools counter = itertools.count(start=5, step=2) for i in counter: if i > 10: break print(i, end=" ") # 5 7 9 cycle() 지정된 시퀀스를 무한히 반복하는 함수 import itertools colors = ['red', 'green', 'blue'] color_cycle = itertools.cycle(colors) for _ in range(6): print(next(color_cycle), end=" ") repeat() 지정된 값을 지정된 횟수만큼 반복하는 함수 imp..

Python/수업 2023.05.29

객체지향(Object Oriented Programming) 특강

객체지향 클래스 다형성 캡슐화 상속 추상화 메시지 전달 클래스와 인스턴스 클래스 : 붕어빵틀 인스턴스 : 붕어빵 클래스 안에는 속성(attribute, property)과 메서드가 있다 괄호의 차이: my_car.color : 속성 my_car.drive() : 메서드 # 자동차 클래스 class Car: # 클래스에서 속성을 만들면 인스턴스를 만들 필요 없이 사용 가능 color = 'red' # 자동차 객체가 가질 속성 (모델명, 색상, 현재 속도) # 더블언더바(던더) # 만들 때 바로 무조건 실행되는 함수 def __init__(self, value): self.color = value # 자동차 객체가 가질 동작, 메서드 (전진, 후진, 가속, 감속) def drive(self): print("..

Python/수업 2023.04.28

파이썬 대패키지시대_패키지 의존성 관리

패키지 의존성 관리 Module < Package < Library Module : 파이썬으로 정의된 파일 / 실행 가능한 파이썬 파일 Package : 모듈의 집합(.모듈이름) Library : 사용할만한 모듈 패키지를 만들어 놓은 것 (Python Standard Library(표준 라이브러리), Python Package Index(PyPI)) pip : Python Package Installer npm, yarn : 자바스크립트의 패키지 관리자(Python의 pip와 비슷) (package.json, package-lock.json → Node_modules) pip install Package : 패키지 설치 pip install Package==1.0.4 : 특정 버전의 패키지 설치 pip ..

Python/수업 2023.04.23

파이썬의 코루틴

서브루틴 Subroutine 종속적인 루틴 코루틴 Coroutine 협력적으로 실행되는 루틴 파이썬의 코루틴 비동기 프로그래밍 동기 처리 : 순차 처리 방식 비동기 처리 : 여러 작업을 동시에 처리 시간 : 동기 > 비동기 실행 중인 함수를 잠시 중단(대기 상태)하고 나중에 실행을 재생하는 기능 asyncio import asyncio import random # await 코루틴 안에서 다른 코루틴의 실행 완료를 기다림 async def fetch_data(): print("데이터를 가져오는 중...") await asyncio.sleep(1) # 데이터를 가져오는데 1초가 걸린다고 가정 return random.randint(1, 100) async def main(): data = await fet..

Python/수업 2023.04.23

프로세스와 스레드

프로세스 실행 중인 프로그램. 실행을 위해 CPU가 필요함 포그라운드 프로세스(foreground process) : 사용자가 볼 수 있는 공간에서 실행되는 프로세스 백그라운드 프로세스(background process) : 사용자가 볼 수 없는 공간에서 실행되는 프로세스 프로세스 제어 블록 : PCB(process control block) 프로세스 관련 정보를 저장하는 자료 구조 프로세스 ID (PID) : 특정 프로세스를 식별하기 위해 부여하는 고유한 번호 레지스터 값 : 프로그램 카운터 값 포함 프로세스 상태 CPU 스케줄링 정보 메모리 정보 사용한 파일과 입출력장치 정보 : 사용한 입출력장치의 정보 프로세스 확인하는 방법 : 윈도우 [작업 관리자] - [서비스] - [PID] 프로세스의 메모리 ..

Python/수업 2023.04.16

타입별 메서드의 종류

문자열 메서드 text = "Hello, World!" # count # 특정 문자의 개수 count = text.count("l") print(count) # 3 # find # 특정 문자열이 처음 나오는 위치 position1 = text.find("World") print(position1) # 7 position2 = text.find("wow") # 없을 경우 -1 return print(position2) # -1 # index # 특정 문자열이 처음 나오는 위치 try: position3 = text.index("wow") print(position3) except ValueError: # 없을 경우 ValueError print("없어") # join # 특정 문자열 기준 다른 문자열들을 ..

Python/수업 2023.04.16

파이썬 문법 심화 1주차 3_Sparta Coding Club

https://sw-ing.tistory.com/34 파이썬 itertools 함수 iterator의 종류 itertools 파이썬3의 표준 라이브러리로, 효율적인 루핑을 위한 이터레이터를 만드는 함수 루프(Loop): 반복문. 명령문을 반복적으로 실행시키는 것 이터레이터(Iterator) 파이썬에서 반복으로 처리를 sw-ing.tistory.com requests 파이썬에서 HTTP 통신을 가능하게 해주는 모듈 beautifulsoup과 함께 웹 크롤링을 하거나 api 통신이 필요할 때 사용됨 requests 요청에 존재하는 method: (장고나 스프링 같은 프레임워크를 다룰 때 필수!) GET : 데이터 정보 요청 POST : 데이터 생성 요청 PUT : 데이터 수정 요청 DELETE : 데이터 삭..

Python/수업 2023.03.23

파이썬 문법 심화 1주차 2_Sparta Coding Club

https://sw-ing.tistory.com/31 파이썬 함수(function)와 메서드(method)의 차이 함수(function) 함수명() len(), int(), str() 등 어떠한 기능을 수행하는 친구 클래스 및 객체와 상관없이 독립적으로 존재함 함수의 값을 변수에 대입 가능 즉 매개변수를 통해 자료 전달 output = function_ sw-ing.tistory.com class 심화 __init__() : 클래스의 초기 상태를 정의할 수 있는 메서드 class에 __init__ 메서드를 사용하면 클래스 처음 작동 혹은 인스턴스 생성시 해당 메서드가 실행됨 class CookieFrame(): def __init__(self, name): print(f"생성 된 과자의 이름은 {name..

Python/수업 2023.03.23

파이썬 문법 심화 1주차 1_Sparta Coding Club

가상 환경(virtual environment) 파이썬에서는 pip라는 패키지 인스톨러를 사용해 패키지들을 설치하고 관리함 2개 이상의 프로젝트를 개발하게 될 경우 버전 등 호환성 문제가 발생할 수 있음 python 가상 환경을 활용해 각 프로젝트마다 독립적인 환경을 구성하여 호환성 문제를 최소화시킨다 프로젝트 시작 전에 기본으로 설정해줘야 함 python -m venv venv 👉 venv 폴더가 생성됨 (오른쪽 Yes : 다시 열어도 가상환경 안에 있는다) venv\Scripts\activate 👉 venv가 실행됨 👉 (venv) (반대는 deactivate) (입력할 때는 Tap을 누르면 자동완성이 됨) pip install requests 👉 requests라는 모듈을 pip를 사용하여 설치하는..

Python/수업 2023.03.21

파이썬 문법 기초 1주차_Sparta Coding Club

파이썬 설치 👉 번역팩을 설치하는 것 변수 선언 : 변수이름 = 값 #새 변수 print(변수이름) #출력할 때 자료형 : 숫자형, 문자열 1) 숫자형 : 사칙연산이 가능하다 + (더하기) - (빼기) * (곱하기) / (나누기) // (몫) % (나머지) ** (거듭제곱) - 비트 쉬프트 연산 1200: print('버스를 타자!') else: print('걸어가자') 반복문 fruits = ['사과', '귤', '수박', '딸기'] for fruit in fruits: print(fruit) people = [ {'name': 'bob', 'age': 20}, {'name': 'carry', 'age': 38}, {'name': 'john', 'age': 7}, {'name': 'smith', 'ag..

Python/수업 2023.03.20