본문 바로가기

Python16

[Python] 오늘도 정리 - yield란? Yield? 일단 yield가 함수 안에서 return 대신 사용한다고 간략하게 설명이 되어 있습니다. 하지만 return 대신 yield가 사용되게 되면 generator라는 개념으로 함수 단위를 호출하게 됩니다. a = [1,2,3,4,5] b = [10,20,30,40,50] def yieldTest(): for x in a: if x == 3: yield x def returnTest(): for x in b: if x == 30: return x print(yieldTest()) # print(returnTest()) # 30 이와같이 동일한 조건에서도 yield가 선언되어 있는 함수는 generator를 생성합니다. 왜 generator를 사용할까요? generator를 사용하게 되면 최대 이.. 2022. 11. 11.
[Python] 함수 정의 하기 1. 함수 정의 하기 def f(a, b, c, d): print(f"{a + b}, {c + d}") f(c=1,d=5,a=3,b=7) # 결과 10, 6 2. default 인자 정의하기 def f(a=1, b, c=1, d): print(f"{a + b}, {c + d}") f(b=3, d=7) # 결과 4, 8 3. 참조 인자 위치 강제 하기 인자의 key를 인자에 적용하여 함수를 호출하면 순서에 상관없이 인자를 입력할 수 있습니다. 하지만 /를 인자 사이에 선언하면 / 앞에 위치한 인자의 위치를 강제시킬수 있습니다. def f(a, b, /, c, d): print(f"{a + b}, {c + d}") f(3,6,1,1) # 결과 9, 2 # Type Error 발생하는 경우 f(c=3,d=6,.. 2022. 11. 3.
[Django] Database Api 살펴보기 Database에 쿼리를 해야하는 상황에 ORM 방식으로 원하는 모델까지 생성을 한 상태에서의 쿼리 방법을 알아보겠습니다. class Person(models.Model): first_name = models.CharField(...) last_name = models.CharField(...) birth_date = models.DateField(...) Person 이라는 ORM 모델 객체를 만들었을때 쿼리하는 방법입니다. 1. raw 함수 활용 하기 Person.objects.raw('SELECT id, first_name, last_name, birth_date FROM myapp_person') raw 함수는 우리가 일반적으로 사용하는 sql문으로 Database 조회를 가능하게 해주는 함수입니.. 2022. 8. 12.
[Django] ORM 모델 클래스 선언하기 feat. Decriptor python class내에 변수 선언 방법 참조 링크 https://paciencia.tistory.com/87 Database에 접근하여 데이터를 CRUD하는 방법중에 Django에서는 ORM 모델 class를 활용합니다. Django에서는 ORM class를 선언 할때에는 django.db의 models를 인자값으로 선언해주어야 합니다. from django.db import models # ORM 모델 class class Client(models.Model): name = models.CharField(max_length=100) phone = models.CharField(max_length=11) # ------------------------------------------ 비교선 # 일반 .. 2022. 8. 11.