'IT/Python'에 해당되는 글 31건
파이썬 GIL (Global Interpreter Lock)
Global Interpreter Lock (GIL) 악명 높은 GIL? 파이썬 버전 2 시절에 병렬 처리를 위해 이런저런 문서들을 많이 보았습니다. 수년이 흐른 지금 파이썬 재단에서 이 GIL을 어떻게 처리했을까? 궁금하여 관련 정보를 찾아보니 아직도 현재 진행형이었습니다. 그리고 신기하게도 GIL을 설명할 때 같이 보이는 단어가 있었는데 그것은 바로 "악명 높은"이라는 수식어입니다. 그렇다면 이 악명 높은 GIL이 과연 무엇일까요? 일단 GIL을 뜻하는 "Global Interpreter Lock"을 직역하자면 "글로벌 인터프리터 잠금" 정도로 해석될 것 같습니다. 의미를 뜻 그대로 생각해 본다면 전반적으로 인터프리터가 락을 건다??라는 의미일까요? 파이썬 용어를 알아보는데 가장 좋은 방법은 바로 공..
IT/Python | 2020. 12. 14. 02:14
파이썬 venv 가상환경 배포 하기
파이썬 가상 환경은 virtualenv? pyvenv? venv!! 그동안 파이썬 가상 환경에 대해 논란이 많았습니다. 파이썬 2에서 virtualenv로 가상 환경을 생성할 수 있었는데 파이썬 3 버전이 탄생하고 파이썬 2를 개발하던 개발자들이 파이썬 3으로 넘어오면서 virtualenv를 사용하기 시작했습니다. 그러면서 정작 파이썬 3에서는 pyvenv를 사용하도록 권장하던 시절이 있었습니다. 하지만 이제 파이썬 2는 역사 속으로 잠들어가고 있으며 파이썬 3.6 버전부터 pyvenv 또한 폐지하게 되었습니다. 그러면 이제 남은 단 하나 venv만이 파이썬 3에서 사용할 수 있는 가상 환경으로 자리 잡게 되었습니다. 이제는 교통정리가 깔끔하게 되어 파이썬을 개발하면서 어떤 가상 환경을 사용하면 좋을지 ..
IT/Python | 2020. 12. 10. 23:05
파이썬 로그 (로깅)
파이썬 로깅 (logging) 파이썬으로 모듈로 배치 파일을 작성할 때 매우 중요한 사항이 있습니다. 바로 이 포스팅 주제인 로그입니다. 서비스 장애가 발생했을 때 가장 먼저 확인하는 것이 바로 로그입니다. 모든 프로그램은 로그를 자동으로 생성하지 않습니다. 프로그래머의 재량과 센스에 의존하여 장애가 발생했을 시 그 포인트를 쉽게 찾아가기 위해 중요하다 생각하는 부분에 로그를 작성하도록 하는 것입니다. 로그 파일은 프로그램 작성 시에도 매우 중요한 역할을 하는데 프로그래머의 의도에 맞게 제대로 된 루틴을 수행하는지 그리고 그 값이 충분히 도출되었는지 확인을 할 수 있기 때문입니다. 이러한 로그 파일을 만들기 위해 프로그래머는 로그 파일을 컨트롤할 수 있는 모듈을 따로 작성해 그 모듈을 사용하곤 했습니다...
IT/Python | 2020. 12. 8. 02:59
파이썬 웹 크롤러? 웹 스크래퍼 만들기 - 3
파이썬 크롤러 로또 사이트 크롤링 하기 이 포스팅 글은 "파이썬 웹 크롤러? 웹 스크래퍼 만들기" 연재입니다. 파이썬 크롤러 환경 설정이나 크롤러에서 사용하는 모듈 사용법을 알고 싶으시면 아래 이전 글을 참고해 주세요. - 파이썬 웹 크롤러? 웹 스크래퍼 만들기 - 1 captainbin.tistory.com/entry/%ED%8C%8C%EC%9D%B4%EC%8D%AC-%ED%81%AC%EB%A1%A4%EB%9F%AC-%EB%A7%8C%EB%93%A4%EA%B8%B0 - 파이썬 웹 크롤러? 웹 스크래퍼 만들기 - 2 captainbin.tistory.com/entry/%ED%8C%8C%EC%9D%B4%EC%8D%AC-%ED%81%AC%EB%A1%A4%EB%9F%AC-%EB%A7%8C%EB%93%A4%EA..
IT/Python | 2020. 12. 8. 02:52
파이썬 웹 크롤러? 웹 스크래퍼 만들기 - 2
파이썬 웹 크롤러 requests 익히기 requests 모듈에서 웹 크롤러를 제작하는데 필요한 최소한의 사용법을 알아보겠습니다. 웹 서버로 데이터를 요청하는 방식은 GET방식과 POST방식이 있는 것은 잘 아실 겁니다. 간단히 말해 웹브라우저에서 URL부분에 주소 맨 뒤에? 와 함께 변수=값&변수=값과 같은 형태가 보인다면 GET형식입니다. 반면 깔끔한 주소만 보인다면 POST방식입니다. 하위 내용은 get 형태와 post 형태의 기본적인 형태와 데이터를 보내는 방법을 작성하였습니다. url부분은 자주 방문하시는 사이트 주소로 테스트해보시면 좋을 것 같습니다. 그리고 상황에 맞춰 데이터를 가져오면 req_dt변수의 값을 가공하는 방법은 별도로 서술했습니다. get 요청 - 기본 형태 import req..
IT/Python | 2020. 12. 8. 02:48
파이썬 웹 크롤러? 웹 스크래퍼 만들기 - 1
파이썬 웹 크롤러 크롤러? 웹 크롤러! 파이썬 크롤러를 만들기에 앞서 웹 크롤러에 대해 알아보겠습니다. 일반적으로 말하는 웹 크롤러에 대한 정의는 아래 링크에 자세히 설명되어 있습니다. https://ko.wikipedia.org/wiki/%EC%9B%B9_%ED%81%AC%EB%A1%A4%EB%9F%AC 웹 크롤러 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 검색 엔진에 대해서는 웹크롤러 문서를 참조하십시오. 웹 크롤러(web crawler)는 조직적, 자동화된 방법으로 월드 와이드 웹을 탐색하는 컴퓨터 프로그램이다. 웹 ko.wikipedia.org 간략히 웹 크롤러에 대해 요약을 하자면 DNS 정보(많은 사이트)를 기준으로 각 사이트마다 갖고 있는 하이퍼 링크 및 문서를 수..
IT/Python | 2020. 12. 8. 02:14
파이썬 클래스
파이썬 class 클래스를 사용하는 이유 클래스의 개념은 OOPL로 객체지향 프로그래밍 언어를 지칭하며 클래스는 데이터와 기능을 함께 묶는 방법을 제공합니다. 파이썬의 클래스에 대한 개념을 자바의 설명을 그대로 가져와 설명한다면 파이썬의 클래스는 그다지 매력적이지 않았을 것입니다. 다른 언어의 클래스를 접해본 분이라면 아마 클래스 설명할 때 추상적이 어쩌고 다형성이 어쩌고 하는데 그냥 싹 잊고 파이썬 클래스를 접하는 것이 좋습니다. 다만 객체나 매서드 등과 같은 용어는 비슷하게 사용합니다. 절차적 언어에서 사용하던 용어는 클래스 개념으로 들어오면서 변경됩니다. 함수 = 메서드 변수 = 객체 메서드 + 객체 = 클래스 클래스 할당 = 인스턴스 정도만 기억하시면 좋겠습니다. 그렇다면 궁극적으로 왜 클래스를 ..
IT/Python | 2020. 12. 8. 01:18