Flask에서는 route() 데코레이터를 사용하여 함수를 URL에 바인딩합니다. Flask의 Quickstart 문서를 보며 진행한 과정을 작성한 글입니다. https://flask.palletsprojects.com/en/2.0.x/quickstart/ 부족한 부분이나 이상한 부분이 있을 수 있습니다. 개발 환경 구축은 다음 포스트를 참고하세요 Windows 10 환경에서 Visual Studio Code와 Miniconda를 사용한 Flask 개발 환경 만들기 https://webnautes.tistory.com/1522 Miniconda를 설치하지 않고 pip install flask 명령으로 해도 상관은 없습니다. 2021. 12. 19 - 최초작성. 미리 작성해놓았던 글인데 이제서야 첫번째 글..
Flask의 기본 응답 유형인 HTML을 리턴할때 렌더링된 사용자 값을 공격으로부터 보호하기 위해 이스케이프해야 합니다. 나중에 소개될 Jinja로 렌더링된 HTML 템플릿은 이 작업을 자동으로 수행합니다. 본 포스팅에서 소개하는 escape()는 수동으로 사용할 수 있습니다. Flask의 Quickstart 문서를 보며 진행한 과정을 작성한 글입니다. https://flask.palletsprojects.com/en/2.0.x/quickstart/ 부족한 부분이나 이상한 부분이 있을 수 있습니다. 개발 환경 구축은 다음 포스트를 참고하세요 Windows 10 환경에서 Visual Studio Code와 Miniconda를 사용한 Flask 개발 환경 만들기 https://webnautes.tistory..
실행한 파이썬 파일의 경로를 얻는 방법입니다. Visual Studio Code에서 하나의 폴더내에 서브 폴더별로 파이썬 코드를 관리할 경우 불러올 데이터 파일 위치를 파이썬 코드 파일 위치로 해야 합니다. 2021. 12. 19 최초작성 첫번째는 실행한 파이썬 파일의 위치를 출력하며, 두번째는 파이썬 파일이 속한 디렉토리의 부모 디렉토리가 출력됩니다. import os python_file_path= os.path.dirname(os.path.abspath(__file__)) print(python_file_path) parent_directory = os.path.dirname(python_file_path) print(parent_directory) 실행 결과입니다. /Users/webnautes/..
range를 이용하여 2의 배수 저장된 리스트를 생성하여 넘파이 배열의 인덱스로 사용하는 예제입니다. 2021. 12. 6 - 최초작성 import numpy as np a = np.arange(10) print(a) idx = list(range(1,10,2)) print(a[idx]) 실행 결과 원본 넘파이 배열에서 짝수 인덱스 위치에 있는 원소만 가져와 새로운 넘파이 배열을 생성합니다. [0 1 2 3 4 5 6 7 8 9] [1 3 5 7 9]
Numpy 배열에 열을 추가하는 Python 예제코드입니다. 2021. 12. 1 - 최초작성 import numpy as np array = np.array([[1,2], [3,4], [5,6]]) print(array) # 3 x 2 배열입니다. # [[1 2] # [3 4] # [5 6]] print() # 기존 배열에 3 x 1 배열을 결합합니다. array2 = np.append(array, [[1],[1],[1]], axis = 1) print(array2) # 3 x 3 배열이 되었습니다. # [[1 2 1] # [3 4 1] # [5 6 1]] 원본 코드 - https://www.delftstack.com/ko/howto/numpy/numpy-add-column/
Numpy 배열에서 0이 아닌 최소값을 찾는 예제입니다. 2021. 12. 1 최초작성 # -*- coding: utf-8 -*- import numpy as np import numpy.ma as ma a = np.array([-1, 0, 1, 2, 3, 4, 5]) print(a) min_value = np.min(ma.masked_where(a == 0, a)) print( "0이 아닌 최소값 :", min_value ) # the position/index of non-zero minimum value in the array min_value_idx = np.argmin(ma.masked_where(a == 0, a)) print( "0이 아닌 최소값의 인덱스 : ", min_value_idx )..
두 곡선의 교차점에 대응하는 x, y좌표를 구할 수 있는 Python 예제 코드입니다. 2021. 11. 30 - 최초작성 실행 결과입니다. 두 곡선의 교점을 초록색 점으로 표시해주고 있습니다. 터미널에서 교차점의 x,y 좌표를 확인할 수 있습니다. [(1.2831976623728205, -0.283620905396323), (4.425039547130342, 0.2818828030413486), (7.566358178278255, -0.281334885867327)] 전체 소스 코드입니다. # -*- coding: utf-8 -*- # 원본 코드 - https://stackoverflow.com/a/59120343 import numpy as np from matplotlib import pyplot ..
Python에서 List에 원소를 추가하는데 걸리는 시간과 Numpy에서 넘파이 배열에 원소를 추가하는데 걸리는 시간을 비교해봤습니다. 예상과 달리 넘파이 배열에 원소를 추가하는 시간이 더 오래 걸립니다. 2021. 11. 29 - 최초작성 Python List에 원소를 추가한 후, 넘파이 배열로 변환하는 방법과 빈 넘파이 배열에 원소를 추가하는 방법 두가지에 대한 코드와 결과입니다. Python의 List에 원소 추가 import numpy as np import time start = time.time() arr = [] for i in range(1000000): arr.append(i) arr = np.array(arr) print(arr.shape) print("list append time :..
Python OpenCV에서 이미지 크기(width, height)를 가져오는 방법입니다. 2021. 11. 14 컬러 이미지의 경우에는 shape 함수를 통해 height, width, channels를 얻을 수 있습니다. import numpy as np import cv2 img = cv2.imread('apple.png', cv2.IMREAD_COLOR) print('img.shape ', img.shape) h, w, c = img.shape print('height ', h) print('width ', w) print('channel ', c) img.shape (618, 641, 3) height 618 width 641 channel 3 흑백 이미지의 경우에는 shape 함수를 통해 he..
Python에서 JSON 포맷 파일을 로드하는 방법입니다. 2021. 11. 14 최초작성 test.json 이름으로 파일을 작성합니다. {"name":"Lee","messages":["msg 1","msg 2","msg 3"],"country":"korea"} 다음 파이썬 코드를 사용하여 json 파일을 로드할 수 있습니다. import json f = open('test.json') json_file = json.load(f) print(json_file) print(type(json_file)) # {'name': 'Lee', 'messages': ['msg 1', 'msg 2', 'msg 3'], 'country': 'korea'} # print(json.dumps(json_file)) print..