Python 16

Closure와 Decorator

이번 포스트에서는 클로저와 데코레이터에 대해 알아보겠습니다. 1) 클로저와 데코레이터란?클로저는 함수안에서 함수를 반환하는 경우에, 반환되는 함수를 일컫는 말입니다.주로 재귀함수나 함수를 순차적으로 실행하는 경우에 사용할 수 있는데이를 통해 재사용성이 높은 함수 구조를 만들 수 있습니다. 데코레이터는 함수를 확장하는 함수로서 @ 기호를 사용하여 어노테이션으로 사용할 수 있습니다.주로 반복되는 작업을 여러 함수에 적용하는 경우나 또는기존 함수를 수정하지 않고 추가구현하는 경우에 사용이 가능합니다. 이제 예제를 통해 클로저와 데코레이터를 사용해보겠습니다. 2) 클로저의 예제클로저를 통해 간단한 곱셈을 수행하는 함수를 만들어보겠습니다.def Mul(m): def closure(n): retu..

Python 2024.11.17

인코딩과 디코딩

이번 포스트에서는 파이썬을 통한 인코딩과 디코딩을 알아보겠습니다. 1) 인코딩과 디코딩이란?우선 인코딩과 디코딩이 무엇인지 알아보겠습니다.인코딩은 사람이 인지할 수 있는 형태의 데이터를 컴퓨터가 이해할 수 있는 형태로 변환하는 것을 의미합니다.인코딩은 다른 말로 코드화, 암호화, 부호화 등으로 표현할 수 있습니다. 디코딩은 인코딩과는 반대로 동작합니다.컴퓨터가 이해할 수 있는 형태에서 사람이 인지할 수 있는 형태로 변환하는 것을 의미합니다.다른 말로 역코드화, 복호화 등으로 표현할 수 있습니다. 이때 인코딩과 디코딩의 방식은 같은 방식으로 이뤄져야 합니다.만약, 인코딩을 UTF-8 방식으로 진행했다면 디코딩 역시 UTF-8 방식으로 진행해야 합니다.이제 예제를 통해 파이썬에서 인코딩과 디코딩이 어떻게 이..

Python 2024.11.16

자료형 어노테이션

기본적으로 파이썬은 변수의 자료형 문제에 대해서 자유롭습니다.그렇지만 프로젝트의 규모가 커지고 협업을 하는 상황이 되면파이썬의 자유로운 방식은 소통의 불화를 불러오는 문제를 일으킬 수 있습니다.이런 상황을 위한 어노테이션에 대해 알아보겠습니다. 1) 어노테이션이란?변수를 선언할 때 그 타입을 명시적으로 선언해 줌으로써어떤 타입의 값이 지정될 것인지 직접 알려주는 것이 어노테이션이라고 합니다. 어노테이션을 사용하게 되면 가독성과 협업시의 효율성이 높일 수 있습니다.파이썬의 경우 3.5 버전부터 어노테이션을 사용할 수 있습니다. 2) 파이썬의 어노테이션과 예제파이썬의 어노테이션 방식은 다음과 같습니다.변수의 경우 아래의 방식을 사용하고변수이름 : 자료형 = 변수의값 함수의 경우 다음의 방식을 사용합니다.de..

Python 2024.11.15

iterator와 generator

이번 포스트에서는 iterator와 generator에 대해 알아보겠습니다. 1) iteratoriterator는 집합에서 차례대로 값을 꺼낼 수 있는 객체를 말합니다.iterator는 집합의 크기가 매우 크고 데이터의 양이 아주 많을 때 일일이 그 집합을 사용하지 않고 필요한 값을 뽑아 사용합니다.이 방식은 메모리에도 부담을 덜 주기에 집합이 큰 경우에 아주 효율적입니다. iterator의 경우 반복이 가능한 객체에만 사용할 수 있는데,이러한 객체의 상태를 'iterable하다' 라고 표현할 수 있습니다. iterator는 다음의 2개의 함수로 동작합니다.iter() 함수를 통해 객체를 반복 가능한 객체로 변환합니다.next() 함수로 객체의 값을 뽑아올 수 있습니다.그리고 가장 중요한 것은 한번 ne..

Python 2024.11.14

python을 통한 주식 관련 정보 추출 (2)

https://monstrosite.tistory.com/10(전의 글에 이어서 작성됩니다.) 3) 웹사이트 구조 파악하기웹사이트 구조를 파악하기 위해 우리는 F12키를 눌러 개발자 도구를 사용할 것입니다. 개발자 도구의 위 버튼을 클릭하시면 웹 사이트의 HTML문서에서 우리가 원하는 데이터의 정보를 확인할 수 있습니다.예시로 우리가 찾고자 하는 회사명을 확인하고 싶다면,  와 같은 방식으로 사용할 수 있습니다. 위의 개발자 도구에서 매매가는 div class="h_company" 태그 아래의 a 태그 안에 위치합니다. 이러한 구조를 토대로 코드를 작성할 수 있습니다. 4) 코드 설계하여 작성하기import requestsfrom bs4 import BeautifulSoupdef crwal(code): ..

Python 2024.03.03

python을 통한 주식 관련 정보 추출 (1)

이 포스팅에서는 Python을 통한 웹사이트의 정보 추출 방법을 알려드리겠습니다.웹사이트의 정보를 뽑아오기 위해서는  BS4(Beautiful Soup 4) 라이브러리를 사용합니다. 위의 라이브러리는 HTML이나 XML 구조에서 필요한 데이터를 뽑기 위해 사용하는 라이브러리 입니다.따라서 사용하는 개발환경에 맞춰 위의 라이브러리를 설치해주셔야 합니다. 정보를 추출하기 위한 과정은 다음과 같습니다.url 찾기필요한 정보 파악하기웹사이트 구조 파악하기코드 설계하여 작성하기그러면 지금부터 시작해보겠습니다. 1) url 찾기일단 네이버 금융 사이트로 이동합니다https://finance.naver.com/ 네이버페이 증권국내 해외 증시 지수, 시장지표, 뉴스, 증권사 리서치 등 제공finance.naver.co..

Python 2024.03.03