목록분류 전체보기 (106)
훈훈훈
# 쿼리셋(QuerySet) ?? QuerySet 이란 데이터베이스에서 전달 받은 객체의 목록이다. (Django ORM에서 발생한 자료형) 리스트와 구조는 같지만 파이썬 기본 자료구조가 아니기 때문에 파이썬에서 읽고 쓰기 위해 자료형 변환(Casting)을 해줘야한다. 이제 아래와 같은 코드로 확인해보자. 위 코드는 request 요청으로 "name" 과 "password"를 전달받아 Json 형태로 반환해주는 코드이다. 필요한 모듈들은 Import 한 후 파이썬 쉘에서 확인해보자. ($ python manage.py shell) 현재 데이터베이스에 쌓인 값이 없기 때문에 [모델클래스].objects.create( )에 임의의 값을 저장하였다. 값을 저장 후 [모델클래스].objects.all( )와 ..
# 프로젝트와 애플리케이션 - 프로젝트 웹 사이트에 대한 전체 프로그램을 프로젝트(Project)라고 한다, - 애플리케이션 모듈화된 단위 프로그램을 애플리케이션이라고 한다. 즉, 애플리케이션 프로그램들이 모여 프로젝트를 구성하는 개념 # MVT 패턴 MVT 각 기능을 구분해서 한 요소가 다른 요소들에 영향을 주지 않도록 설계하는 방식이다. (MVC 패턴과 동일) - Model : 데이터베이스에 저장되는 데이터를 의미 - VIew : 실질적으로 프로그램 로직이 동작하여 데이터를 가져오고 처리한 결과를 Templete에 전달 - Template : 사용자에서 보여지는 UI 부분 일반적으로 REST API 를 생성할때는 Model과 View 영역만 작성한다. ** Client의 요청을 받고, Django에서..
# 작업 환경 - MAC OS (운영체제 마다 환경 구성 다름) # 설치 과정 1. virtualenv 모듈 설치 - pip install virtualenv 2. virtualenv 생성 - virtualenv -m venv [Name] ** m(mod) 옵션 : run library module as a script (terminates option list) 3. activate 파일 실행 - [Name]/bin/activate 4. Django 설치 - pip install django~=2.0.0 5. 장고 골격을 만들어 주는 스크립트 실행 - django-admin startproject mysite . 6. 마이그레이션 - python manage.py migrate 7. App 생성 - p..
# Import 찾는 순서 1. sys.modules 파이썬이 모듈이나 package를 찾기 위해 가장 먼저 확인하는 곳이며, 파이썬 인터프리터가 제공하는 변숭롸 함수를 직접 제어할 수 있다, 해당 모듈은 단순한 디렉터리 이며, 이미 import된 모듈과 패키지들을 저장하고 있음, 즉, 새로 import하는 모듈은 sys.modules에서 찾을 수 없다. 2. buit-in modules 파이썬에서 제공하는 공식 라이브러리, Buit-in 모듈든은 이미 파이썬 설치 시 같이 포함된다. 3. sys.path sys.path는 기본적으로 string 요소들을 가지고 있는 list다. 그러므로 파이썬은 list의 각 경로를 하나 하나 확인하여 import 대상인 package가 어느 경로에 위치하고 있는지 확..
# 문자열 포매팅 종류 - %Operator C에서 사용하던 스타일이며 가장 오래된 방식이다. 가독성이 str.format, f-string 방식에 비해 많이 떨어지며, 현재는 권장하지 않는 방식이다. - str.format 파이썬 3.0 이상부터 지원한 포매팅 방식이며, 다음과 같이 %Operator에 비해 월등한 가독성을 보여준다. 하지만 여러 매개변수를 처리할 때 format 함수도 같이 길어지기 때문에 이 방식 또한 가독성은 좋지 않다. - f-string 파이썬 3.6 이상 부터는 지원하는 포맷이며 가장 빠른 속도를 지원한다. f-string은 다음 예제와 같이 f 접두사를 붙여 사용할 수 있다. # 속도 비교 각 포매팅 방식별 속도를 비교하기 위해 속도 비교 함수를 작성 후 테스트를 진행하였다..
# default value parameter default value parameter 는 함수가 호출될때 파라미터에 인자를 받아 넘겨준다. # non-default value parameter non-default value parameter 는 함수가 호출될때 파라미터에 인자를 받아 넘겨줄 수 도 있으며, 인자를 넘겨주지 않아도 keywordname=value 형식으로 선언되어 있기 때문에 지정한 value 를 넘겨줄 수 있다. 파이썬에서는 정의할때 파라미터를 받는 순서를 지켜야한다. 다음 코드를 살펴보면 non-default value parameter 를 먼저 받고 default value parameter를 받을 시 다음과 같은 오류 메시지를 확인할 수 있다. ** default value p..
# 행사 일정 : 2020.01.21 13:00 ~ 17:40 # 행사 장소 : 세종대학교 # 발표 자료 https://www.slideshare.net/awskr # 주요 세션 내용 1. 클라우드 기술의 미래 - 현재 클라우드 서비스는 응용 계층으로 서비스 확대 중 > 인프라 -> DevOps -> 어플리케이션 순으로 발전 중 - 현재 대한만국은 퍼포먼스에 포커스를 맞추고 있음, 즉 얼마나 빨리 서비스를 런칭하고 구성을 변경하는지에 대한 효율성에 집중 - 온-프레미스 환경은 대규모 서비스를 제공하는 회사만 사용할 것으로 예상 - 클라우드 서비스 사용 유무는 어떻게 효율적으로 사용할 것인지에 달려있음(비용, 서비스 가용성 등) 2. 쿠알못이 Amazon EKS로 안정적인 서비스 운영하기 - 쿠버네티스의 ..
/*해당 내용은 길벗 출판사의 파이썬 코딩의 기술이라는 책을 참조하였습니다.*/ # 스코프(Scope : 유효 범위) 변수가 유효만 범위를 뜻하며 대표적인 예로 지역변수와 전역변수가 있다. # 클로저(Closure) 란 클로저는 자신의 정의된 스코프 안에 있는 변수를 참조하는 함수이다. # 코드 예시 위 예시는 리스트 정렬 시 우선순위가 높은 객체가 먼저 정렬 시키는 코드이다. 좀 더 자세히 살펴보면 line 8 에서 "numbers.sort(key=helper)" 코드는 key 값에 helper 함수를 담아 sort 함수를 호출하는 것을 알 수 있다. 해당 코드가 실행이 가능한 이유는 파이썬에서는 클로저를 지원하기 때문에 정의된 스코프에 있는 변수를 참조할 수 있기 때문이다. 결과 출력 시 group ..