전체 글 (1179) 썸네일형 리스트형 Peephole optimization 해당 문서는 https://legacy.python.org/workshops/1998-11/proceedings/papers/montanaro/montanaro.html 를 번역한 것으로, 파이썬의 버전에 따라 결과가 다를 수 있습니다. 원본 문서 python 1.5 버전으로 1998.11월에 작성되었습니다. 파이썬 코드는 간단한 방식으로 고수준 가상 머신에 의해 컴파일 됩니다. 성능을 향상시키기 위해 코드에 peephole optimizer를 적용할 수 있어야 합니다. 이 문서는 기존 바이트 컴파일러와 통합 된 Python으로 작성된 peephole optimization를 조사합니다. 일반적으로, peephole optimization는 opcode의 패턴을 찾아 더 효율적인 코드로 치환해줍니다. p.. The internals of Python string interning 해당 글은 http://guilload.com/python-string-interning/ 를 번역한 글입니다. 해당 글은 Python 2.7.7 버전에서의 인 터닝에 대한 글입니다. 파이썬 버전에 따라 차이가 있을 수 있습니다. 파이썬 최신 버전에 대한 이야기는 https://nephtyws.github.io/python/interning/ 를 보시면 됩니다. 며칠 전 동료에게 내장 함수 intern의 기능을 설명해야 했습니다. >>> s1 = 'foo!' >>> s2 = 'foo!' >>> s1 is s2 False >>> s1 = intern('foo!') >>> s1 'foo!' >>> s2 = intern('foo!') >>> s1 is s2 True 이것은 내부적으로 어떻게 동작할까요? PyS.. wsgi를 왜 쓰나요 "uwsgi를 왜 쓰나요?”라는 질문을 “파이썬에서 통신을 하기 위해 지정한 인터페이스예요”라고 대답을 했지만 … 개인적으로 충분한 대답이 되지 않은 것 같아 이 글을 작성합니다. 해당 글은 “왜”, “어떻게” 그리고 "정말 쓰면 좋아요?”를 주제로 정하고 작성하였습니다. 1. 왜 django의 runserver로 배포 하면 안돼요? django에서는 runserver를 통해 개발 및 테스트를 합니다. 네. runserver는 “개발 및 테스트”가 목적입니다. django의 공식 문서에의 runserver의 글입니다. (https://docs.djangoproject.com/en/2.2/ref/django-admin/#runserver) DO NOT USE THIS SERVER IN A PRODUCTIO.. django Rest framework APIView / Mixins / Viewset - 아래의 코드는 python2.7 , restframework 3.6.4 의 내용입니다. 최신버전의 내용과 다른 부분이 있습니다. 1.APIView APIView -> 클래스 기반 (CBV : class base view) @api_view -> 함수기반 (FBV : function base view) APIView는 여러가지 기본 설정을 제공합니다. ( 직렬화, 인증, 사용량 제한, 권한 등 ) CVB로 작성시 http 메소드에 해당하는 함수를 만들어줘야 합니다. 해당 함수 명은 지정되어 있으며, http의 메소드 명과 동일합니다. (함수명이 틀릴 경우 해당 메소드는 사용할수 없는 메소드로 간주 합니다. ) url에는 파라미터인자를 선언하므로 인자 pk를 받아야 하는 get/put/delete가 하나.. django rest_freamework에서 리턴값을 json으로 보내자. 1. 모든 API를 json으로 리턴한다 가장 쉽고 빠른 방법. Settings.py 에 세팅하면 자동으로 json으로 리턴합니다. REST_FRAMEWORK = { 'DEFAULT_RENDERER_CLASSES': ( 'rest_framework.renderers.JSONRenderer', 'rest_framework.renderers.BrowsableAPIRenderer', ) } 단 위의 방법은 모든 API에 대하여 json 형식으로 대응됩니다. 즉 rest_freamework에서 지원하는 템플릿을 사용할 수 없습니다. 2. depoly 따라 설정하고 한다. 예를 들어 개발 및 test 일 경우엔 setting_develop.py로 만들어서 REST_FRAMEWORK의 옵션을 설정하지 않는 방식입니.. django query 4 OneToOne 관계일때는 annoying의 AutoOneToOne을 사용하자. https://uiandwe.tistory.com/1225 View에서의 쿼리 사용 방법 Django의 쿼리는 마지막까지 지연(lazy)된다 Django의 쿼리셋(queryset)은 데이터베이스의 여러 레코드(row)를 나타냅니다. person_queryset = Person.objects.filter(first_name="uiandwe") 이 코드는 DB에 어떤 쿼리도 전달하지 않습니다. 여러분이 person_queryset에 필터를 추가하거나 person_queryset을 함수에 전달한다 해도, 이는 DB에 아무런 메시지도 전달하지 않습니다. 왜냐하면 DB에 쿼리를 전달하는 일은 웹 애플리케이션을 느려지게 하는 주범 중 .. django query 기초 3 1. select_related and prefetch_related 모델 정의 class Company(models.Model): name = models.CharField(max_length=30) phone_num = models.CharField(max_length=30) floor = models.PositiveIntegerField(default=1) def __str__(self): return "{} {} {}".format(self.name, self.phone_num, self.floor) class Employee(models.Model): name = models.CharField(max_length=30) age = models.PositiveIntegerField(default=.. Python dictionary implementation 해당 글은 http://www.laurentluce.com/posts/python-dictionary-implementation/의 글을 번역한 것입니다. 해당 글의 소스는 python2를 기준으로 작성되었으며 python버전에 따라 다를 수 있습니다. dictionary은 키로 색인되며 연관 배열로 표시될 수 있습니다. dictionary에 3 개의 키 / 값 쌍을 추가해 봅시다 : >>> d = {'a': 1, 'b': 2} >>> d['c'] = 3 >>> d {'a': 1, 'b': 2, 'c': 3} 이 방법으로 값에 액세스 할 수 있습니다. >>> d['a'] 1 >>> d['b'] 2 >>> d['c'] 3 >>> d['d'] Traceback (most recent call last) Fi.. 이전 1 ··· 20 21 22 23 24 25 26 ··· 148 다음