본문으로 바로가기

사회적 거리두는 블로그

현재위치 :: HOME BLOG CATEGORY SEARCH ARCHIVE TAGS MEDIA LOCATION GUESTBOOK

네비게이션

    관리자
    • 블로그 이미지
      JohnWick99

      프로그래밍, 꿀팁 정보를 알려드립니다.

      링크추가
    • 글쓰기
    • 환경설정
    • 로그인
    • 로그아웃

    파이썬 쓰레드(Thread) 알아보기 - 3 : 데이터 통신

    소개 큐(queue) 를 이용해서 독립적으로 실행되는 쓰레드의 상호간 데이터 통신에 대해 알아보겠습니다. 예제 1 큐의 put() 과 get() 을 사용한 예제입니다. import time import threading from queue import Queue def sender(q): data = [2020, 8, 12, 1, 55] while data: d = data.pop(0) q.put(d) print(f'sender : {d}') time.sleep(1) q.put(None) print('sender done') def receiver(q): while True: data = q.get() if data is None: break print(f'receiver : {data}') print(..

    Language/Python 2020. 8. 12. 14:43

    파이썬 쓰레드(Thread) 알아보기 - 2 : 뮤텍스(Lock)

    소개 둘 이상의 쓰레드가 동일한 데이터를 공유하여 발생하는 문제를 해결하기 위한 동기화 기법에 대해 알아보 겠습니다. 세마포어(Semaphore): 공유 자원에 여러 프로세스가 접근하는 것을 막는 것 뮤텍스(Mutex): 공유 자원에 여러 쓰레드가 접근하는 것을 막는 것 예제 1 두 쓰레드가 동일 변수에 접근하며, 그 과정에서 에러가 발생하도록 유도된 코드입니다. 결과는 90이 아닌 45 import threading import time import random def run(n): global total_footprint for i in range(10): print(f'{n} {i}') tmp = total_footprint time.sleep(0.1) total_footprint = tmp + i..

    Language/Python 2020. 8. 12. 12:43

    파이썬 쓰레드(Thread) 알아보기 - 1

    쓰레드(Thread) 쓰레드는 프로그램 내에서 실행되는 흐름의 단위를 말한다. 일반적으로 한 프로그램 하나의 쓰레드를 가지고 있지만, 둘 이상의 스레드를 동시에 실행할 수 있으며 이를 멀티 쓰레드라고 한다. 예제 1 기본적인 쓰레드 실행방법입니다. import threading import time def run(n): for i in range(10): time.sleep(0.1) # print(f'{n} : {i}') print(f'* [{n} done]') rank.append(n) if __name__ == '__main__': players = ['rabbit', 'turtle', 'horse'] for player in players: threading.Thread(target=run, arg..

    Language/Python 2020. 8. 12. 11:36

    파이썬 엘라스틱서치(Elasticsearch) 연동 -2 : CRUD

    소개 파이썬에서 엘라스틱서치과 연동하여 기본 CRUD 사용법에 대해 알아보겠습니다. 우선 엘라스틱서치에서 사용하는 용어를 알아야 할 것입니다. RDBMS Elasticsearch Database Index Table Type Row Document .. .. Python Elasticsearch Client — Elasticsearch 8.0.0 documentation This client was designed as very thin wrapper around Elasticsearch’s REST API to allow for maximum flexibility. This means that there are no opinions in this client; it also means that some..

    Language/Python 2020. 8. 11. 23:59

    파이썬 엘라스틱서치(Elasticsearch) 연동 -1 : 원격 설정

    소개 파이썬을 엘라스틱서치와 연동하는 방법에 대해 알아보려고 하는데요. 우선 원격 설정과 간단한 테스트까지 해보도록 하겠습니다. 서비스 시작 서비스를 시작합니다. sudo systemctl start elasticsearch 각각 서비스 확인, 서비스 포트 확인 명령어입니다. sudo systemctl status elasticsearch netstat -antp curl -X GET localhost:9200 curl 명령어를 이용해도 CRUD 를 할 수 있습니다. 해당 Elasticsearch 버전은 7.8 이네요. curl -X GET localhost:9200 { "name" : "dev", "cluster_name" : "elasticsearch", "cluster_uuid" : "VwEer7N..

    Language/Python 2020. 8. 11. 22:39

    파이썬 명령행 옵션, 인자 사용하기 : argparse

    argparse argparse 모듈은 명령행 옵션, 인자와 부속 명령을 위한 파서 모듈이다. 사용자 친화적인 명령행 인터페이스를 쉽게 작성하도록 한다. 도움말과 사용법 메시지를 출력해주며, 사용자가 잘못된 인자를 주면 에러를 발생시킨다. argparse — 명령행 옵션, 인자와 부속 명령을 위한 파서 — Python 3.7.8 문서 argparse — 명령행 옵션, 인자와 부속 명령을 위한 파서 소스 코드: Lib/argparse.py argparse 모듈은 사용자 친화적인 명령행 인터페이스를 쉽게 작성하도록 합니다. 프로그램이 필요한 인자를 정의하면 docs.python.org 예제 간단하게 활용 방안에 대한 예제입니다. import pickle import argparse parser = argpa..

    Language/Python 2020. 8. 10. 21:30

    파이썬 추상 클래스(abc) 사용하기

    abc(abstract base class) 파이썬에서 추상 베이스 클래스(ABC)를 정의하기 위한 기반 구조를 제공한다. 추상 클래스는 메서드의 목록만 가진 클래스이며 상속받는 클래스에서 메서드를 구현하지 않으면 에러를 발생한다. abc — 추상 베이스 클래스 — Python 3.8.5 문서 abc — 추상 베이스 클래스 소스 코드: Lib/abc.py 이 모듈은, PEP 3119에서 설명된 대로, 파이썬에서 추상 베이스 클래스 (ABC) 를 정의하기 위한 기반 구조를 제공합니다; 이것이 왜 파이썬에 추가되었� docs.python.org 예제 1 추상 클래스에서 정의한 메서드를 구현하지 않으면 다음과 같이 에러를 발생합니다. from abc import * class CrawlerBase(ABC): ..

    Language/Python 2020. 8. 10. 03:36

    파이썬 Tesseract 사용하기 -2 : 패키지 설치 / 예제

    패키지 설치 다음 명령어로 파이썬 tesseract 패키지를 설치합니다. pip install pytesseract 예제 사용한 한글 이미지 사용한 영어 이미지 예제 코드입니다. import pytesseract as ts from PIL import Image img = Image.open('son.png') img2 = Image.open('son2.png') text = ts.image_to_string(img, lang='kor') text2 = ts.image_to_string(img2, lang='eng') print(text) print() print(text2) 손름민(토트넘)이 아시아 선수 시장가치서 압도적인 1위에 올랐다. 일본 매체 산케이스포즈는 4일 독일 트인 트랜스퍼마르크트의 자료..

    Language/Python 2020. 8. 6. 02:21
    • 이전
    • 1
    • 2
    • 3
    • 4
    • 5
    • ···
    • 8
    • 다음

    사이드바

    반응형

    CATEGORY

    • 분류 전체보기 (246)
      • Environment (3)
        • VSCode (1)
      • Linux(2020) (3)
      • API (14)
      • Crawling (11)
        • Basic (8)
        • Data (3)
      • Language (71)
        • Python (61)
        • Javascript (7)
        • Dart (3)
      • Application (35)
        • Flutter (11)
        • Flask (9)
        • PyQt5 (15)
      • AI (5)
        • ML (4)
      • IoT (24)
        • Raspberry Pi (24)
      • OpenCV (28)
      • Bot (8)
      • Errors (9)
      • Tools (3)
      • OS(~2018) (31)
        • Server (8)
        • Window (4)
        • Linux (16)
        • Tools (3)
    • 홈으로
    • 방명록
    • 로그인
    • 로그아웃
    • 맨위로
    SKIN BY COPYCATZ COPYRIGHT 사회적 거리두는 블로그, ALL RIGHT RESERVED.
    사회적 거리두는 블로그
    블로그 이미지 JohnWick99 님의 블로그
    MENU
      CATEGORY
      • 분류 전체보기 (246)
        • Environment (3)
          • VSCode (1)
        • Linux(2020) (3)
        • API (14)
        • Crawling (11)
          • Basic (8)
          • Data (3)
        • Language (71)
          • Python (61)
          • Javascript (7)
          • Dart (3)
        • Application (35)
          • Flutter (11)
          • Flask (9)
          • PyQt5 (15)
        • AI (5)
          • ML (4)
        • IoT (24)
          • Raspberry Pi (24)
        • OpenCV (28)
        • Bot (8)
        • Errors (9)
        • Tools (3)
        • OS(~2018) (31)
          • Server (8)
          • Window (4)
          • Linux (16)
          • Tools (3)
      VISITOR 오늘 / 전체
      • 글쓰기
      • 환경설정
      • 로그인
      • 로그아웃
      • 취소

      검색

      티스토리툴바