Python

    [python] itertools

    [python] itertools

    itertools itertools는 내장모듈이다. import itertools 1. 여러 이터레이터 연결 (1) chain 여러 이터레이터를 하나의 순차적인 이터레이터로 합치고 싶을 때 사용 iter = itertools.chain([1,2,3], [4,5,6]) print(list(iter)) >>> [1, 2, 3, 4, 5, 6] (2) repeat 동일한 값을 반복하고 싶을 때 사용 iter = itertools.repeat(10, 3) print(list(iter)) >>> [10, 10, 10] (3) cycle 원소들을 반복하고 싶을 때 사용 iter = itertools.cycle('ABCD') result = [next(iter) for _ in range(10)] print(resu..

    [django] class-based view, csrf

    [django] class-based view, csrf

    ※ class-based view를 사용해야 하는 이유!! 객체 지향코드를 사용하여 재사용 가능한 형태로 만들 수 있음 GET, POST 등 처리를 분기(if) 처리가 아닌 함수로 처리할 수 있음 ※ csrf란? cross-site request forgery(사이트 간 요청 위조)의 줄임말로 해킹공격 중 하나이다. django 프로젝트는 기본적으로 settings.py에 csrf 공격 방지 미들웨어가 실행중에 있다. MIDDLEWARE = [ 'django.middleware.csrf.CsrfViewMiddleware', ] API서버의 경우 해당 기능이 필요없기(다른 인증방식 사용) 때문에 해당 라인을 주석 처리하면 된다 장고로 프론트와 백엔드 모두 수행하는 경우 백엔드 파트에서 csrf_exempt..

    [Django] django.core serializers VS drf serializers 차이점

    [Django] django.core serializers VS drf serializers 차이점

    🏁 한줄요약: 더 나은코드를 작성하기 위해서는 drf serializers를 사용하는 것이 좋다. 1. django.core serializers 장고 core에서 제공하는 직렬화는 xml, json, yaml 등으로 변환, 그저 데이터를 변환 해주는 기능만 제공 2. django rest framework serializers (1) 검증(validation) 제공

    [Django] Django 소개

    [Django] Django 소개

    ※ 이 글은 다음 URL: https://django-book.readthedocs.io/en/latest/introduction.html 내용을 요약 정리한 내용임을 미리 알려드립니다. 1. Django란? Django는 차세대 웹 프레임워크이다. 최소한의 유지보수로 최고의 효율을 낼 수 있는 웹 애플리케이션 도구 반복적이고 짜증나고 골치 아픈것을 완화 시켜줌 2. Django는 왜 사용해야할까? (1) CGI 최초의 동적인 웹 프로토콜은 CGI(Common Gateway Interface)이며 웹사이트의 혁명을 불러 일으켰습니다. 하지만 CGI는 재사용성, 개발자가 소스코드를 이해하는데 큰 어려움이 있습니다. (2) PHP(ASP, JSP, etc.) PHP는 이런 문제를 많이 해결했고, 전세계에서 ..

    [matplotlib]  데이터 시각화, 그래프 그리기

    [matplotlib] 데이터 시각화, 그래프 그리기

    ※ 링크가 없을 경우 아직 작성 전 입니다. 🌈. 링크 모음 matplotlib 공홈 🌟 차트 종료(plot type) 🌟 튜토리얼(공식) - 입문, 중급, 고급, 색상, 텍스트 등 🌟🌟🌟차트 정리(핸드북) seaborn 공홈 📖. 목차 1. matplotlib (1) matplotlib란?, 설치 (2) matplotlib 한글 적용 2. matplotlib 차트 사용 (1) matplotlib bar 차트

    [Python3] 동시성과 병렬성

    [Python3] 동시성과 병렬성

    1. 동시성(Concurrency)과 병렬성(Parallelism) (1) 동시성: 컴퓨터가 같은 시간에 여러 다른 작업을 처리하는 것처럼 보이는 것(아주 빠르게 번갈아 가며 실행) - 스레드(thread) - 코루틴(coroutine) (2)병렬성: 컴퓨터가 같은 시간에 실제로 여러 작업을 처리 -> 속도 향상 - 시스템 콜(system call) - 하위 프로세스(subprocess) - C 확장(extension) - processPoolExcutor 파이썬이 시작한 자식 프로세스는 서로 병렬적으로 실행 -> 컴퓨터의 모든 CPU 코어 사용 가능