Tinkerbell Glitter
[250124] ๊ธฐ์–ตํ•ด, super()~!~!
Back End ๐Ÿ“ฒ/Python ๐Ÿ’ป
super()๋ž€? ๐Ÿฆธ๐Ÿป‍โ™‚๏ธ1. super() ์ •์˜`super()`๋Š” ์ƒ์†๊ณผ ๋‹คํ˜•์„ฑ์„ ํ™œ์šฉํ•  ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ํ•จ์ˆ˜๋กœ, ๋ถ€๋ชจ ํด๋ž˜์Šค์˜ ๋ฉ”์„œ๋“œ๋‚˜ ์†์„ฑ์„ ํ˜ธ์ถœํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค.์ด๋ฅผ ํ†ตํ•ด ์ฝ”๋“œ์˜ ์ค‘๋ณต์„ ์ค„์ด๊ณ , ๋‹ค์ค‘ ์ƒ์†์—์„œ๋„ ํšจ์œจ์ ์œผ๋กœ ๋ถ€๋ชจ ํด๋ž˜์Šค์˜ ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๋‹ค. `super()`์˜ ๊ธฐ๋ณธ ๋™์ž‘1) ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ•class Parent: def greet(self): print("Hello from Parent!")class Child(Parent): def greet(self): super().greet() # ๋ถ€๋ชจ ํด๋ž˜์Šค์˜ greet() ํ˜ธ์ถœ print("Hello from Child!")child = Child()child.greet()# csha..
[250123] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์ž…๋ฌธ ๋ฌธ์ œ
Algorithm ๐Ÿ“Š/๋ฌธ์ œ ํ’€์ด ๐Ÿ’ฏ
์ปจํŠธ๋กค ์ œํŠธ โ†ฉ๏ธQ. ์ˆซ์ž์™€ "Z"๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ๋‹ด๊ธด ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด์— ์žˆ๋Š” ์ˆซ์ž๋ฅผ ์ฐจ๋ก€๋Œ€๋กœ ๋”ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋•Œ "Z"๊ฐ€ ๋‚˜์˜ค๋ฉด ๋ฐ”๋กœ ์ „์— ๋”ํ–ˆ๋˜ ์ˆซ์ž๋ฅผ ๋บ€๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค. ์ˆซ์ž์™€ "Z"๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด `s`๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ๋จธ์“ฑ์ด๊ฐ€ ๊ตฌํ•œ ๊ฐ’์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด๋ณด์„ธ์š”. ์ œํ•œ์‚ฌํ•ญ1 ≤ `s`์˜ ๊ธธ์ด ≤ 200-1,000 `s`๋Š” ์ˆซ์ž, "Z", ๊ณต๋ฐฑ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.`s`์— ์žˆ๋Š” ์ˆซ์ž์™€ "Z"๋Š” ์„œ๋กœ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋ฉ๋‹ˆ๋‹ค.์—ฐ์†๋œ ๊ณต๋ฐฑ์€ ์ฃผ์–ด์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค.0์„ ์ œ์™ธํ•˜๊ณ ๋Š” 0์œผ๋กœ ์‹œ์ž‘ํ•˜๋Š” ์ˆซ์ž๋Š” ์—†์Šต๋‹ˆ๋‹ค.`s`๋Š” "Z"๋กœ ์‹œ์ž‘ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.`s`์˜ ์‹œ์ž‘๊ณผ ๋์—๋Š” ๊ณต๋ฐฑ์ด ์—†์Šต๋‹ˆ๋‹ค."Z"๊ฐ€ ์—ฐ์†ํ•ด์„œ ๋‚˜์˜ค๋Š” ๊ฒฝ์šฐ๋Š” ์—†์Šต๋‹ˆ๋‹ค.์ž…์ถœ๋ ฅ ์˜ˆsresult"1 2 ..
[250122] DateTimeField() ๊ฐœ๋…์ •๋ฆฌ~
Back End ๐Ÿ“ฒ/Django โ›“๏ธ
~DateTimeField ๋ž€?~1. DateTimeField ์ •์˜`DateTimeField`๋Š” Django ๋ชจ๋ธ์—์„œ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ์ €์žฅํ•˜๋Š” ํ•„๋“œ์ด๋‹ค ์ด ํ•„๋“œ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ `DATETIME` ์œ ํ˜•์— ๋งคํ•‘๋˜๋ฉฐ, Python์˜ `datetime.datetime` ๊ฐ์ฒด๋กœ ์ฒ˜๋ฆฌ๋œ๋‹ค๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ•๋ชจ๋ธ ์ •์˜from django.db import modelsclass Event(models.Model): name = models.CharField(max_length=100) event_date = models.DateTimeField()๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์ดํ›„ ๋ฐ์ดํ„ฐ ์ €์žฅfrom datetime import datetimefrom myapp.models import Eventevent = Event(name="..
[250121] ์ฟผ๋ฆฌ์…‹(QuerySet)์ด๋ž€?
Back End ๐Ÿ“ฒ/Django โ›“๏ธ
QuerySet์ด๋ž€?1. QuerySet ์ •์˜QuerySet์€ Django ORM(Object-Relational Mapping)์˜ ํ•ต์‹ฌ ์š”์†Œ๋กœ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ํŠน์ • ์กฐ๊ฑด์— ๋งž๋Š” ๊ฐ์ฒด์˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค.๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๊ฒ€์ƒ‰ํ•  ๋•Œ ๊ฒŒ์œผ๋ฅด๊ฒŒ ํ‰๊ฐ€(Lazy Evaluation) ๋œ๋‹ค. ์ฆ‰, ์ฟผ๋ฆฌ๊ฐ€ ์‹ค์ œ๋กœ ์‹คํ–‰๋˜๊ธฐ ์ „๊นŒ์ง€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์ƒํ˜ธ์ž‘์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.2. QuerySet ์ƒ์„ฑ ๋ฐฉ๋ฒ•1) ๊ธฐ๋ณธ QuerySet ์ƒ์„ฑfrom myapp.models import Book# ์ „์ฒด ๊ฐ์ฒด ์กฐํšŒbooks = Book.objects.all()2) ํ•„ํ„ฐ๋ง์„ ํ†ตํ•œ QuerySet# ํŠน์ • ์กฐ๊ฑด์— ๋งž๋Š” ๋ฐ์ดํ„ฐ๋งŒ ๊ฐ€์ ธ์˜ค๊ธฐbooks_by_author = Book.objects.filter(author="John Doe")..
[250120] HttpResponse์™€ render์˜ ์ฐจ์ด์ 
Back End ๐Ÿ“ฒ/Django โ›“๏ธ
HttpResponse ๋ž€?1. HttpResponse ์ •์˜`HttpResponse`๋Š” Django์—์„œ HTTP ์‘๋‹ต์„ ์ƒ์„ฑํ•˜๋Š” ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ํด๋ž˜์Šค์ด๋‹ค.๋ฌธ์ž์—ด๋กœ ์ž‘์„ฑ๋œ ์‘๋‹ต ๋ณธ๋ฌธ(body)์„ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ง์ ‘ ์ „๋‹ฌํ•œ๋‹ค.2. ํŠน์ง•์ง์ ‘ ์‘๋‹ต ์ƒ์„ฑ: ์‘๋‹ต ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ์ž‘์„ฑํ•˜์—ฌ ๋ฐ˜ํ™˜ํ•จ๋‹จ์ˆœ ์‘๋‹ต: HTML, JSON, ํ…์ŠคํŠธ ๋“ฑ ๋ชจ๋“  ์‘๋‹ต ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌ ๊ฐ€๋Šฅํ•จ์œ ์—ฐ์„ฑ: ํ—ค๋” ์„ค์ •, HTTP ์ƒํƒœ ์ฝ”๋“œ ์ง€์ • ๋“ฑ์„ ์ž์œ ๋กญ๊ฒŒ ์ˆ˜ํ–‰ํ•จ์‚ฌ์šฉ ์˜ˆ์ œfrom django.http omport HttpResponsedef my_view(request): return HttpResponse("Hello, World!")ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ Hello, World! ๋ผ๋Š” HTML ์‘๋‹ต์„ ์ง์ ‘ ๋ฐ˜ํ™˜ํ•œ๋‹ค.3. HttpRespo..
[250117] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์ž…๋ฌธ ๋ฌธ์ œ
Algorithm ๐Ÿ“Š/๋ฌธ์ œ ํ’€์ด ๐Ÿ’ฏ
์ˆจ์–ด์žˆ๋Š” ์ˆซ์ž์˜ ๋ง์…ˆ 2๏ธโƒฃQ. ๋ฌธ์ž์—ด `my_string` ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. `my_string` ์€ ์†Œ๋ฌธ์ž, ๋Œ€๋ฌธ์ž, ์ž์—ฐ์ˆ˜๋กœ๋งŒ ๊ตฌ์„ฑ๋˜์–ด์žˆ์Šต๋‹ˆ๋‹ค.`my_string` ์•ˆ์˜ ์ž์—ฐ์ˆ˜๋“ค์˜ ํ•ฉ์„ returnํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.์ œํ•œ์‚ฌํ•ญ1 ≤ `my_string`์˜ ๊ธธ์ด ≤ 1,0001 ≤ `my_string` ์•ˆ์˜ ์ž์—ฐ์ˆ˜ ≤ 1000์—ฐ์†๋œ ์ˆ˜๋Š” ํ•˜๋‚˜์˜ ์ˆซ์ž๋กœ ๊ฐ„์ฃผํ•ฉ๋‹ˆ๋‹ค.000123๊ณผ ๊ฐ™์ด 0์ด ์„ ํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ๋Š” ์—†์Šต๋‹ˆ๋‹ค.๋ฌธ์ž์—ด์— ์ž์—ฐ์ˆ˜๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ 0์„ return ํ•ด์ฃผ์„ธ์š”.์ž…์ถœ๋ ฅ ์˜ˆmy_stringresult'aAb1B2cC34oOp'37'1a2b3c4d123Z'133 A.def solution(my_string): answer = 0 num = '' for m..