티스토리 뷰

python lecture/basic

[edu] curriculum

burningrizen 2019. 1. 29. 15:21

Start



[what is program]

- attribute

- behavior


[native vs managed]

- release memory

- hardware

- performance

- productivity


[why python?]

- easy? not easy?

- mobile? web service?

- frontend/backend

- django

- automation

- tensorflow

- productivity

- powerful



Basic


[book]

https://wikidocs.net/book/1553


[variable]

- types: integer, float, string, bool

- How is the type defined?

- L value, R value

- mutable, immutable

- +-*/, %, // 

- priority of operator

- cost of operation

- cast

- isinstance


[input/print]

- syntax

- check type

- print multiple param

- format()


[if]

- syntax

- indent

- use bool

- cond = 10 < 20

- readability

- and, or 

- performance (condition location)

- multiple if

- a if cond else b


[list]

- [], list()

- append

- list + list

- index

- delete

- tuple


[slicing]

- n to end

- start to n

- insert

- reverse


[dictionary]

- init, create

- add item

- keys(), values()

- delete item


[for]

- how to use range()

- syntax

- print 0 to n-1

- append by for

- modify item by for

- print item line by line

- enumerate

- multiple for

- _ (under bar)

- list comprehensions


[while]

- compare for, while

- remove multiple space by while


[packing/unpacking]

- swap

- unpacking


[function]

- syntax

- define, call

- return

- params, position

- default value : def foo(x=10)

- check type : def foo(x: int)->int:

- *args, **kwargs


[builtins]

- sort, sorted, len

- map, zip, set, filter

- sum, max, min

- random


[oop]

- how to make zoo

- abstract

- Inheritance

- Encapsulation

- Polymorphism


[class]

- constructor(__new__, __init__)

- instance (self)

- isinstance

- self.variable

- self.func

- __str__, __repr__

- __slots__

- classmethod/static variable

- Inheritance

- capsule


[attribute]

- hasattr

- getattr

- setattr


[overloading/overriding]

- overloading/overriding in python

- method overriding

- operator overloading


[stack/queue]

- use list

- make stack/queue class by linked list 

- __getitem__, __len__, ___iter__

- is_bracket()


[lambda]

- syntax

- anonymous function

- usage of lambda


[call of value/call of reference]

- what is value/reference

- id()

- call of value

- call of refence

- which is either cov or cor in python? 


[shallow copy/deep copy]

- mutable/immutable

- list shallow copy

- slicing

- import copy

- copy.deepcopy

- __copy__, __deepcopy__


[exception]

- try/except

- raise

- assert

- how to handling error

- exception case (zerodivision, index, assertion)


[logging]

-import logging

- basicConfig

- log level

- formatter

- file handler


[import]

- module import

- from

- as


[__name__, "__main__"]

- main function


[performance]

- import time 

- stop watch

- for algorithm


[regex]

- import re

- syntax

- pattern

- compile

- re.sub


[custom sequence]

- __getitem__, __len__

- __iter__

- __setitem__, __delitem__

- __reserved__

- __contains__


[context manager]

- syntax

- with as

- __enter__

- __exit__


[generator]

- lazy evaluation

- yield

- use in for

- next()

- compare memory with list (sys.getsizeof)

- Fibonacci


[container/iterable/iterator/generator]

- container

- iterable

- iterator

- generator


[closure]

- syntax

- inner function

- nonlocal


[decorator]

- syntax

- logging, check performance

- get param

- use by class


[benchmark]

- time

- timeit

- decorator

- context manager


[workqueue]

- callback

- workqueue class

- thread



Concurrency



[sync, async]

- sync

- async

- multi thread



[thread]

- start, join

- lock

- R lock

- condition


[ThreadPoolExcutor]

- thread pool cost

- futures obj

- submit

- context manager

- map

- shutdown


[ProcessPoolExcutor]

- thread pool cost

- futures obj

- constructor

- map

- context manager

- performance



[multi processing]

- what is GIL

- thread context switching

- GIL effeciency/advantages

- work

- constructor

- fork

- process spawn

- forkserver

- daemon process

- pid



Effective



[process]

- multi process pool

- count_prime

- cost



Clean Code



[process]

- multi process pool

- count_prime

- cost



'python lecture > basic' 카테고리의 다른 글

[edu] 멤버십 테스트 ( in)  (0) 2019.01.29
[edu] import module (모듈 임포트)  (0) 2019.01.29
[edu] enumerate (__iter__, __getitem__, __len__)  (0) 2019.01.29
[edu] __name__ == "__main__"  (0) 2019.01.29
[edu] 정규표현식 (regex)  (0) 2019.01.29
댓글