2021/07/31 4

[Python 고급] 1. variable scope, context Manager

1. variable scope 전역변수 지역에서 읽을 수 있음 지역에서의 지역변수와 전역변수의 이름이 같을 때, 전역 변수 선택 시 'global' 키워드 붙여주기 nonlocal 키워드 (global 객체도 아니고 inner block의 변수도 아니므로) closer의 변수에 접근 시 선언식으로 키워드 사용하기 locals() 내부필드-메서드(지역전체) 를 dict로 리턴함 globals() 전역함수/변수를 dict로 리턴 키값에 접근해 값 변경가능 2. Context Manager 원하는 타이밍에 정확하게 리소스를 할당 및 반환 해줌 파일 I/O 시에 전용 클래스로 사용함. with 문과 같이 쓰임 __enter__(self) : with 구문에 진입하는 시점에 자동으로 호출되는 메소드 __exit..

Python 2021.07.31

[Python 중급] 2. 파이썬 병행성

* 병행성(Concurrency) : 한 컴퓨터가 여러일을 동시에 실행함. -> 내가 한 일들의 마지막 시점을 알아야 함. * 병렬성(Parallalism) : 여러 컴퓨터가 여러 일을 동시에 실행 1. 병행성 iterator : 반복가능한 객체를 생산함(iterable) __iter__ : 반복가능한 객체의 함수. 이터레이터가 생산됨. 반복시 iter()함수로 인자 1개씩 접근함 ( next() ) Generator 반복 가능한 객체를 리턴함. 코루틴과 연동하며 작은 메모리 조각을 뜻함. yield시 next()호출시에 리턴할 변수를 출력함. 다음 yield로 이동함 Coroutine 단일 싱글 스레드 스택 기반 비동기 작업 * 스레드(멀티스레드) OS에서 관리. CPU 코어에서 실시간, 시분할 비동기..

Python 2021.07.31

[Python 중급] 1. 파이썬 클래스, 시퀸스, 일급함수

* 이 포스팅은 인프런의 '파이썬 중급' 강의를 듣고 요약한 내용임 1. 파이썬 클래스 심화 클래스 & 메소드 클래스 기반의 개발은 객체지향 개발법으로 코드 재사용을 통하여 중복을 크게 줄일 수 있다. 데코레이터 클래스 메소드 : @classmethod 스태틱 메소드 : @staticmethod (인스턴스나 클래스로 호출이 가능함) 2. 파이썬 데이터 모델 매직 메소드 클래스 안에 정의 할 수 있는 특별한 method - 파이썬의 핵심 구조 built-In : 이미 만들어짐 모든 데이터 타입은 '클래스'임 __add__(), __str__(), __sub__(), __le__(), __ge__() 데이터 모델 추상화 데이터 모델 설계 - NamedTuple : Tuple + dictionary 키, 값을..

Python 2021.07.31

[Python 기초] 반복 가능 자료형

* 이 포스팅은 유튜브 "널널한 교수의 고급 파이썬" 강의를 듣고 요약한 포스팅임 1. 반복가능 자료형과 반복자 반복자 데이터를 꺼내어 이용할 수 있는 객체 리스트, 튜플, range ... (iterable한 객체) __next__() 속성을 가짐 : 해당 메소드로 차례차례 항목을 반환함 list -> iter() => 반복자객체 생성 반복자객체.next() (or __next__() ) 시 항목 반환 인덱스가 넘어갈 경우 Stop Iteration 예외 발생 2. 반복자 객체 생성 def __iter__(self): def __next__(self): # => 반복자는 이 함수를 가져야 함 3. 내장 함수 반복 가능한 객체에 있는 내장 함수 min, max all ( 원소 모두 참일 때 True반환)..

카테고리 없음 2021.07.31