728x90

IT/언어 133

[Vue.js] v-model 이란?

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 직역. 의역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. v-model이란 공식 사이트를 인용하면 다음과 같다. form의 input 요소나 textarea요소, select 요소에 쌍방향(two-way) 데이터 바인딩을 만들고 싶을 때, v-model 디렉티브를 사용할 수 있다. 너무 짧아서 알기 어렵다. v-model의 역할은 "변경과 데이터를 엮어주는 것"이라고 할 수 있다. 즉, (1) 표시할 데이터 (2) 변경이 있다면 데이터에 반영 이 두 가지를 세트로 한 것이 쌍방향(two-way) 데이터 바인딩이며, 이것을 v-model이 해준다는 것이다. 사용하자면 다음과 같이 쓸 수 있다. username: {{ username }..

IT/언어 2023.01.13

[Vue.js] Vue.js에서의 deep selector 그리고 작성법

deep selector이란? 간단하게 말하자면, Vue.js에서 scoped가 있는 style을 작성하고 있을 때에 그 컴포넌트의 자식 컴포넌트에도 style을 추가하고 싶을 때 사용하는 css의 셀렉터의 작성법을 일컫는다. Vue.js의 scoped CSS의 원리에 대해서 짤막하게 설명하면, scoped CSS를 이용하면 컴포넌트마다 data-v-[hash]가 할당되어 있고 그 속성과 세트가 되는 스타일이 적용되게 된다. 이로 인해 그 속성은 컴포넌트마다 다른 것이 적용되므로, 컴포넌트 단위로 스타일을 할당할 수 있다는 것이다. 그러나 추가로 부모 컴포넌트에서 자식 컴포넌트에 다른 style을 추가 혹은 적용하고 싶을 때 사용할 수 있는 것이 deep selector이다. deep selector의 ..

IT/언어 2023.01.13

[Vue.js] Atomic Design 베이스의 Vue 컴포넌트 설계

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. 컴포넌트 설계와 Atomic Design의 관계 Atomic Design은 원래 UI 설계를 위해 만들어진 것이다. 거대한 어플리케이션도 효율 좋게 부품으로 재이용하고, 더욱이 상세한 조절도 가능하도록 고려한 것이다. Atomic Design에서는 "컴포넌트"이라는 단어가 사용되고, 한 번보면 vue등 어플리케이션에도 그대로 설계로써 사용할 수 있다고 생각될 수 있다. 그러나 UI 설계의 방법, 사상을 그대로 어플리케이션의 컴포넌트 설계에 적용하면 일부분 되지 않는 곳이 있다. 어플리케이션 개발에서는, 동일한 레이어 아웃에서도 데이터의 갱신의 타이밍이 다른 경우가 있다. 이 데..

IT/언어 2023.01.10

[python] 문자열을 숫자로 변환하는 int()함수가 적용되지 않는 경우와 해결법

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. Python 에서는 int()이나 float()를 이용하여 숫자의 문자열을 숫자 데이터(int형이나 float형)으로 변환할 수 있다. float()는 실수를 대상하고 있지만, int()은 정수에 한정되어 있으므로, 생각지도 못하게 에러를 마주하게 되는 경우가 있다. 이번 포스팅에서는 이러한 int()을 이용할 때 에러가 되는 경우에 대해서 설명하고자 한다. int() 함수의 기본 int()은 Python의 내장함수로, 아래와 같인 "정수의 문자열"을 인수로 지정하여 int형의 데이터로 변환시켜준다. >>> int("123") 123 >>> type(int("123")) 참고로..

IT/언어 2023.01.03

[alembic/python] Python의 Migration 툴인 alembic의 사용법

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 직역, 의역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. 이번 포스트에서는 python의 migration 패키지인 alembic의 간단한 사용법에 대해서 설명하고자 한다. Alembic이란? 공식 사이트에도 설명되어 있지만, Python으로 SQLAlchemy를 사용하고 있을 때 DB의 관리해주는 migration 툴이다. 개발 환경 간단하게 구축하고 싶으므로 Docker을 사용할 생각이다. 1. Docker로 환경 구축 폴더 구성은 다음과 같다. . ├── README.md ├── docker-compose.yml └── src └── model.py docker-compose.yml 파일은 다음과 같이 작성했다. version:..

IT/언어 2022.11.11

[SQLAlchemy/Python] python바탕의 Query로 데이터 베이스 조작 (CRUD)

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 직역, 의역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. SQLAlchemy는 Python에서 자주 사용되는 OR Mapper이다. 이번 포스팅에서 SQLAlchemy를 이용하여 DB의 CRUD를 조작하는 방법에 대해서 설명하도록 하겠다. 개발환경 참고로 db_session이라는 명명은 딱히 별 다른 의미가 없으므로 포스트나 작성법에 따라 명명이 다르다. Windows10 Python 3.8 SQLite SQLAlchemy 2.0 또한, Flask에서 SQLAlchemy을사용한 경우 Django와는 조금 사용법이 달라지지만 기본적인 작성법은 동일하므로, 프레임워크에 따라 적당히 변경하길 바란다. # 이번 포스팅에서의 SQLAlchem..

IT/언어 2022.11.10

[python] 사전형의 리스트(list내의 dict)에서 키, 값 검색하기;get 메소드, filter 함수, 내포 표기

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. python의 사전 리스트의 요소를 검색하는 방법에 대해 다루고자 한다. 여기서 얘기하는 사전 리스트는 아래와 같이 하나의 리스트에, 사전형 데이터가 여러 개 들어있는 형태를 의미한다. list_person = [ { 'name':'Taro', 'height':170, 'weight':60 }, { 'name':'Jiro', 'height':180, 'weight':80 }, { 'name':'Hanako', 'height':160, 'weight':50 } ] 사전 리스트에서 키를 검색하여, 값의 목록을 획득하기 1. 일반적인 지정법 사전의 키를 직접 지정하여 값의 목록을 얻..

IT/언어 2022.09.05

[python/numpy] 0 이외의 요소를 추출하는 numpy.nonzero()의 사용법

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있을 수 있으며 틀린 내용이 있으면 지적해주시면 감사하겠습니다. numpy.nonzero 함수는 0이 아닌 요소의 인덱스를 얻을 수 있는 심플한 함수이다. 이번 포스트에서는 numpy.nonzero의 사용법에 대해서 해설하고자한다. numpy.nonzero numpy.nonzero 와 numpy.ndarray.nonzero의 두 가지 타입이 있으며, 사용방법은 거의 동일하다. numpy.nonzero의 기본 문법은 다음과 같다. numpy.nonzero(a) 파라미터명 데이터형 개요 a array_like 배열에 해당하는 것 인덱스를 추출하고 싶은 배열을 지정한다. 이 함수를 통해 반환되는 것은 각 축마다 0아 이닌 요소의 ..

IT/언어 2022.08.20

[python/openCV] openCV로 도형그리기

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용이 있으면 지적해주시면 감사하겠습니다. 개요 openCV로 이미지에 도형이나 문자를 그릴 수 있는 함수들에 대해서 정리해보았다. 함수 목록 도형 함수 텍스트 cv2.putText 사각형 cv2.rectangle 원 cv2.circle 타원 cv2.ellipse 윤곽 cv2.drawContours 마커 cv2.drawMarker 볼록한 폴리곤 cv2.fillConvexPoly 폴리곤 cv2.fillPoly 폴리곤의 윤곽선 cv2.polylines 선 cv2.line 화살표 cv2.arrowedLine 함수 공통 사양 색은 color 로 지정한다. 1채널 이미지의 경우는 int, 3채널 이미지의 경우는 int의 ..

IT/언어 2022.08.10

[python/openCV] 가로세로 비율을 유지한 채로 이미지를 리사이즈하기(이미지 사이즈 변경)

※ 이 포스팅은 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 직역, 의역이 있을 수 있으며, 틀린 내용이 있으면 지적해주시면 감사하겠습니다. 이번 포스트에서는 아래의 그림과 같이 해당 이미지의 가로, 세로 비율을 유치한 채로 지정 사이즈로 리사이즈하는 방법에 대해서 소개하도록 하겠다. cv2.resize 메소드 openCV의 resize의 메소드는 인수에 리사이즈 후의 이미지 사이즈(폭과 높이 튜플)을 지정해서 실행하는 메소드이다. 다만 이 메소드를 그대로 사용하면 지정한 사이즈대로 이미지를 변경해버린다. 예를 들자면 보면 다음과 같다. size = (400, 300) resized_image = image.resize(size) 가로 세로 비율을 유지하도록 리사이즈하는 방법 앞서 설명했듯, 그..

IT/언어 2022.08.08
728x90