python/초급 파이썬(12)
-
[파이썬 Python] 모듈(module) 과 패키지(package)
1. 모듈 module 모듈은 여러 기능을 모아둔 파이썬 파일이다. namespace 스탠다드 라이브러리 자료형 int float string print dir 내장함수 유용한 스탠다드 모듈 math, randon, datetime, os, os.path, re, pickle, json, copy 스크립트 vs 모듈 보통 스크립트 와 모듈로 파일을 따로 만들어 쓴다 모듈: 필요한 변수 함수를 정의 모아놓은 파일 스크립트 : 모듈을 import로 가져와서 실행 용도 파일 __name__ __name__ : 모듈의 이름을 저장해 놓은 변수 __main__ : 실행한 파일의 이름은 __name__ = __main__이다. import 된파일은 __name__ = 원래 모듈이름 으로 설정 된다. if __nam..
2020.12.20 -
[파이썬 Python] 객체지향 프로그래밍
*티스토리 코드블럭이 이상해서 code block indentation이 밀려있다 객체 지향 프로그래밍의 4가지 추상화(Abstraction) 캡슐화(Encapsulation) 상속(Inheritance) 다형성(Polymorphism) 1. 추상화 Abstraction 클래스나 함수의 기능, 설명을 (""" or ''')사이에 주석처럼 적어주는 것이다. 보통 """ 쌍따옴표 3개를 사용한다. help(클래스 이름) 을 통해 도큐멘테이션(작성한 docstring)을 모아서 볼수 있다. classs xxx: """docstring""" def yyy: """docstring""" python 3.5 부터 type hinting 가능하다. def market_cap(self, price: int, numbe..
2020.12.18 -
[파이썬 Python] 클래스 메서드 @classmethod
클래스 메소드 인스턴스 메소드 정적 메소드 클래스 메소드 class method @classmethod def market(cls): 인스턴스 변수를 사용하면. -> 인스턴스 메소드 클래스 변수를 사용하면 -> 클래스 메소드 인스턴스 변수 클래스 변수 둘다 사용하면 -> 인스턴스 메소드 인스턴스 변수는 self를 통해 클래스 변수는 cls를 통해 클래스 메소드는 인스턴스 변수 사용 불가 클래스변수만 사용가능 인스턴스 메소드 instance method def __str__(self): 정적 메소드 static method 어떤 속성도 다루지 않고, 기능적인 역할만 하는 메소드를 정의할 때 정적 메소드를 쓴다. 속성을 갖지 않는 객체도 만들수 있다. 이 말은 변수는 없고 정적 메소드만 있는 클래스도 만들 ..
2020.12.17 -
[파이썬 Python] 데코레이터 @decorator
데코레이터 쉽게말하면 함수로 함수를 꾸며주는 것이다. 여러함수에 일일히 추가해주는 것은 귀찬으므로 함수에 함수를 더해주는 것이다. 예를들면 def print_hello(): print('hello') #앞뒤에 print('*****') 을붙여주고싶을때 ***** hello ***** def add_to_print_hello(original): def wrapper: print('*****') original() print('*****') return wrapper add_to_print_hello(print_hello)() @함수명으로 깔끔하게 써줄수 있다. 함수 앞뒤에 *****를 출력하고 싶은 함수위에 @add_to_print_hello 써주면 된다. @add_to_print_hello def pri..
2020.12.17 -
[파이썬 Python] __str__
특수메소드 double underscore method 라고도 한다. print 함수를 사용할때 인스턴스(instance)를 출력을 할때 사용한다. class Market: def__init__(slef,....): .....생략 앞글과 동일 def __str__(self): return f'회사명{self.name}, 종목코드{self.code}' kospi = Market('삼성전자','005930','72000') print(kospi) [파이썬 Python] __init__ initalize 의 약자로 init 이다. __init__ 은 영어로 magic method 라 한다. __init__ 은 instance 가 생성 될때 자동으로 호출된다. 예시 class Market: def intiali..
2020.12.17 -
[파이썬 Python] __init__
initalize 의 약자로 init 이다. __init__ 은 영어로 magic method 라 한다. __init__ 은 instance 가 생성 될때 자동으로 호출된다. 예시 class Market: def intialize(self, name, code, price) self.name = name self.code = code self.price = price kospi = Market() kospi.initialize('삼성전자','005930','72000') kosdaq = Market() kosdaq.initialize('알테오젠','196170','177700') class Market: def __init__(self, name, code, price) self.name = name s..
2020.12.17