python
-
이터레이터 iteratorToday_I_Learned/Python 2023. 9. 17. 11:29
요소(element)를 하나씩 차례대로 꺼낼 수 있는 객체. 이터레이터를 사용하는 이유는 꺼내올 요소 전체를 미리 생성하지 않고, 필요한 값만 하나씩 생성하여 메모리 사용을 줄이기 위함이다. = 지연 평가 방식 lazy evaluation 반복 가능한 객체만이 이터레이터로 변환될 수 있다. 반복 가능한(iterable) 객체: 요소가 여러 개이고 한 번에 요소를 하나씩 꺼낼 수 있는 객체. for 문과 같은 반복 구문에 적 용할 수 있는 리스트 같은 객체. (iterable object ≠ iterator) 객체의 반복 가능 여부는 __dir__(객체) 로 조회하여 ‘__iter__’가 존재하는지 확인하면 된다. __iter__가 있다는 것은 그 객체가 반복 가능하다는 것이지 반드시 이터레이터라는 의미는..
-
[Django] 배프의 오지랖 파이썬 웹프로그래밍Book 2023. 8. 14. 23:42
배프의 오지랖 파이썬 웹프로그래밍 배프의 오지랖 파이썬 웹프로그래밍 - 예스24기초부터 실전 웹 서비스까지 다 담았다!현직 개발자이자 IT강사인 배프의 강의와 실무를 통해 쌓은 노하우를 한 단계식 알려드립니다. 현 웹 프로그래밍 시장은 다양한 기술을 활용하여 얼마나www.yes24.com Django 2번째 책아직 2장까지만 읽은 상태이지만 '점프 투 장고'와 확실히 차이가 느껴지는 책. 내용면에서는 '점프 투 장고'보다 깊이가 있지만 그만큼 이해 난이도가 살짝 높다. 우연이었지만 '점프 투 장고' 를 읽고 이 책을 읽게 된 것이 나름 적절한 순서였다고 느껴졌다. 2장까지는 이론 위주의 설명이고 3장 부터는 실습 위주의 내용으로 구성되어 있다.밀리의 서재에서 서비스 중이라 편하게 모니터로 보면서 실습할 ..
-
[Django][완독] 점프 투 장고 - WikiDocsBook 2023. 8. 14. 23:20
점프 투 장고 - Wikidocs 점프 투 장고 **점프 투 장고 종이 책 출간 !! (2020.12)** * [책 구입 안내](https://wikidocs.net/105844) 점프 투 장고는 파이보라는 … wikidocs.net Django를 처음으로 배운 책. 어려운 내용은 최소화하여 Django 입문 용으로 괜찮았다고 생각한다. 다만 그만큼 Django를 깊이있게 배우기엔 한계가 있다. 실습 내용을 진행하면서도 Code는 이해하지만 Django 내부적인 동작 방식이나 흐름 등은 알 수 없었다. (원래 Django를 사용할 때 그런 것인지 내가 아직 입문자라 잘 모르는 것인지는 구별 할 수 없었지만!) 또 필자이신 박응용님이 운영하는 파이보 사이트에서 책을 읽다 모르는 부분을 질문할 수도 있다. ..
-
django 입문(6) 장고관리자 adminBackend/Django 2023. 7. 12. 23:39
장고관리자화면에 접속할 슈퍼유저 생성: python3 manage.py createsuperuser 장고관리자 페이지 주소: http://{자신의 페이지 주소}/admin/ 장고관리자에 모델 등록 from django.contrib import admin from .models import Question admin.site.register(Question) 장고관리자에 모델을 등록하면 자동으로 장고관리자페이지에 모델이 나타난다. 장고관리자를통해 모델을 사용(=모델 형식대로 데이터 등록, 삭제, 수정 등)할 수 있다. 모델 검색 기능 추가 구조 class {ClassName}(admin.ModelAdmin): search_fields = [{member_var}] 위 클래스는 미리 구현한 모델 클래스(e..
-
django 입문(5) Model 1) 기본 사용법Backend/Django 2023. 7. 10. 22:50
Model 데이터베이스 처리를 하기 위해 사용되는 개념. 쿼리문 대신 데이터를 처리할 수 있게 해줌. 장고는 ORM을 사용한다. ORM: Object Relational Mapping. DB의 테이블을 모델화(=객체화)하여 사용하는 방식. DB 종류를 변경하는데 수월함. (쿼리문이 아닌 모델 객체를 사용하기 때문에 - 쿼리문은 개발자마다 그 내용이 다를 수 있어 통일성 확보가 어려움. MySQL과 오라클 간 호환에도 쿼리문 차이가 발생하여 번거로움.) {app}/models.py models.py 에 구현되는 클래스(=모델)는 django.db의 models.Model을 상속 받아야만 한다. 왜냐하면 models.Model에 ORM을 사용할 수 있는 기능들이 구현되어 있기 때문이다. from django..
-
django 입문(3) RoutingBackend/Django 2023. 7. 3. 22:40
urls.py project(보통 config) - urls.py: 가장 큰 틀의 Routing 작업 수행. 들어온 요청을 적당한 App으로 위임. 프로젝트 성격의 URL 매핑만 추가되는 것이 좋다. from django.contrib import admin from django.urls import path from pybo import views urlpatterns = [ path('admin/', admin.site.urls), path('pybo/'. views.index), # 'pybo/' URL이 요청되면 views.index 를 호출하라는 매핑을 추가 ] URL 뒤에 ‘/’ 를 붙이는 이유는 URL을 정규화하는 장고의 기능 때문. 따라서 웬만하면 URL 매핑 시 항상 끝에 슬래시(’/’)..
-
django 입문(2) 앱 생성 ~ Routing(URL 관리)Backend/Django 2023. 5. 29. 10:51
5. 앱 1 개의 프로젝트 안에는 여러 개의 앱이 존재. 여러 앱이 모여 웹 사이트를 구성. 각 앱마다 하나의 기능을 제공. ex) 관리자 앱, 인증 앱 등… 앱 동작 방식 urls.py : 사용자의 접근 요청을 어디로 보낼지 결정하는 역할. view: 여러 함수들 위치 model: Django에서 기본적으로 제공하는 DB와 통신하는 기능. 앱 생성 django-admin startapp [app_name] 6. Routing urls.py project(보통 config) - urls.py: 가장 큰 틀의 Routing 작업 수행. 들어온 요청을 적당한 App으로 위임. 프로젝트 성격의 URL 매핑만 추가되는 것이 좋다. from django.contrib import admin from django...