국비지원교육/교육일지

3주차 교육일지: 파이썬 기초, 선형대수, 웹크롤링

민서타 2023. 7. 31. 18:47

삼항연산자:

 print('성인') if age > 18 else print('미성년자')

  ==>가독성 면에서 사용, 조건문이 참 거짓 또는 어딘가에 할당 할떄

 

*arg,  #arg는 튜플로 처리

def func1(*args):

  for n in num:

     print(n)

func1(1,2,3)

 

**kwargs #딕셔너리 형태 출력

def func(msg, **kwargs):

  print(msg)

  print(kwargs)

func('hi', name = 'min', age = 27)

 

super: 메서드 오버라이딩 시 init함수 내 변수 상속받음.

super().__init__(매개변수1, 매개변수2, etc)

클래스 변수: 인스턴스들이 모두 공유하는 변수

 

if __name__ == "__main__":

  print("해당 파일을 직접 실행했을 때만 실행")

 

람다 함수:

(lambda a: True if a>0 else False)(비교하고자 하는 숫자)

lambda a: a-1 # 호출 방법 (lambda a: a-1)(인자)

 

map 함수:

map(func(x), 순서 자료형)

items = list(map(lambda x: x.strip(), items))

 

filter 함수:

filter(함수, 순서 자료형)

def func(x):

  return x<0

fliter(func, items)

 

함수 고급:

 1)클로저: 함수가 종료되어도 자원을 사용할 수 있는 함수

 2)이터러블 객체: 순서가 있는 자료형(ex>for i in 이터러블 객체 / 문자열, 리스트, 튜플 등)

계절 기반 이터레이터 출력

3)제너레이터: 함수안에 yield를 사용 # 메모리 사용이 효율적, 제너레이터 표현식 사용할 수 있음

  *return과의 차이점: return은 1개의 값만 반환, yield는 작업을 나누어서 반환(병렬식)

4)데코레이터: 함수의 앞, 뒤로 부가적인 기능을 넣어주고 싶을 떄 사용 #로깅(실행 중간중간확인 로그), 권한 

제너레이터 함수 호출 및 실행

 


Cofator: 3x3 행렬에서 Cij이란 aij은 1로 두고 aij을 제외한 모든 2행의 요소들,

              3열의 요소들을 0으로 둔 상태에서의 det 값

행렬식 활용법: C^t / det(A)

고유값: 정사각 행렬 A에 대하여 det(A-람다)이 0이 되는 람다 값

고유벡터: det(A-람다)=0일 때, (A-람다)x=0을 만족하는 영벡터가 아닌 x를 람다에 대한 고유벡터라 한다

ALS for implict data(구체적인 평가를 내린것이 아닌 유저의 행동방식->구매정보 등)


절망 그 자체.. 웹크롤링 공부 호흡 한 템포를 놓치니

부아아아아앜

 

중꺾마.. 꺾여도 그냥 하는 마음으로 다시 심폐소생술을 시전해보기로 했다.

웹크롤링 시작:

1. 패키지 설치: pip install beautifulSoup4 / 모듈 불러오기 import requests

2. 주소 불러오기: requests.get(주소) #해당 주소로 요청을 보내고, 받은 응답을 리턴

3. soup = BeautifulSoup(문자열, 'html.parser'): #htmp parser: 분석할 분석기의 종류

 ->선택자(id, class 등)를 기준으로 원하는 정보를 가져올 수 있음

 

  명령어: soup.select('태그명') : 태그를 입력으로 사용할 경우

               soup.select('.클래스명') : 클래스를 입력으로 사용할 경우 (. 은 클래스를 뜻하는 특수기호입니다.)

               soup.select('#아이디') : ID를 입력으로 사용할 경우 (# 은 id를 뜻하는 특수기호입니다.)

               soup.select('상위태그명 하위태그명') : 자손 관계 (어떤 태그 내부에 있는 모든 태그를 자손이라고 함)                                 soup.select('상위태그명 > 하위태그명') : 자식 관계(어떤 태크 내부에 태그 중 바로 한 단계 아래에 있는 태그) 

 

 

반응형