Tinkerbell Glitter
[250109] ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ(Object-Oriented Programming) ํŠน์ง•
[SPARTA] AI 9 (24.11 ~ 25.03) ๐Ÿƒ๐Ÿป‍โ™€๏ธ/Python ๐Ÿ“˜
๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ OOP(Object-Oriented Programming) ์ด๋ž€? 1. OOP ์ •์˜๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ์ฒด๋ผ๋Š” ๋…๋ฆฝ์ ์ธ ๋‹จ์œ„๋กœ ๊ตฌ์กฐํ™”ํ•˜๊ณ , ์ด ๊ฐ์ฒด๋“ค์ด ์ƒํ˜ธ์ž‘์šฉํ•˜๋ฉฐ ๋™์ž‘ํ•˜๋„๋ก ์„ค๊ณ„ํ•˜๋Š”ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํŒจ๋Ÿฌ๋‹ค์ž„์ด๋‹ค.๊ฐ์ฒด๋Š” ์†์„ฑ(๋ฐ์ดํ„ฐ)๊ณผ ๋ฉ”์„œ๋“œ(๋™์ž‘)๋ฅผ ํฌํ•จํ•˜๋ฉฐ, ํ˜„์‹ค ์„ธ๊ณ„์˜ ์‚ฌ๋ฌผ์ด๋‚˜ ๊ฐœ๋…์„ ์ฝ”๋“œ๋กœ ๋ชจ๋ธ๋ง ํ•˜๊ธฐ์— ์ ํ•ฉํ•˜๋‹ค.OOP๋Š” ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ์„ฑ, ํ™•์žฅ์„ฑ, ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ๋†’์ด๋Š” ๋ฐ์— ์ค‘์ ์„ ๋‘”๋‹ค.์ฃผ์š” ํŠน์ง•1. ๊ฐ์ฒด(Object)์ •์˜: ํ”„๋กœ๊ทธ๋žจ์˜ ๊ธฐ๋ณธ ๋‹จ์œ„๋กœ, ์†์„ฑ๊ณผ ๋ฉ”์„œ๋“œ์˜ ์ง‘ํ•ฉ์ฒด์ด๋‹ค.ํ˜„์‹ค ์„ธ๊ณ„์˜ ์‚ฌ๋ฌผ(ex. ์ž๋™์ฐจ, ๋™๋ฌผ)์„ ์†Œํ”„ํŠธ์›จ์–ด์ ์œผ๋กœ ํ‘œํ˜„ํ•œ ๊ฒƒ์ž„.์˜ˆ์‹œ:class Car: def __init__(self, brand, color): self.brand = b..
[250106] ์žฌ๊ท€ํ•จ์ˆ˜ ์ •๋ฆฌ
[SPARTA] AI 9 (24.11 ~ 25.03) ๐Ÿƒ๐Ÿป‍โ™€๏ธ/Python ๐Ÿ“˜
์žฌ๊ท€ํ•จ์ˆ˜๋ž€?1. ์žฌ๊ท€ํ•จ์ˆ˜ ์ •์˜์žฌ๊ท€ํ•จ์ˆ˜๋Š” ํ•จ์ˆ˜๊ฐ€ ์ž์‹  ์Šค์Šค๋กœ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ๋งํ•œ๋‹ค์ฃผ๋กœ ํŠน์ • ๋ฌธ์ œ๋ฅผ ์ž‘์€ ๋‹จ์œ„๋กœ ๋ถ„ํ• ํ•˜์—ฌ ๋ฐ˜๋ณต์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ๋•Œ ์‚ฌ์šฉ๋œ๋‹ค์„ ์ž…ํ›„์ถœ์ž„2. ์žฌ๊ท€ํ•จ์ˆ˜์˜ ๊ตฌ์กฐ๊ธฐ์ € ์กฐ๊ฑด(Base Case)์žฌ๊ท€ ํ˜ธ์ถœ์„ ๋ฉˆ์ถ”๋Š” ์กฐ๊ฑด์žฌ๊ท€ ํ˜ธ์ถœ(Recursive Call)ํ•จ์ˆ˜๊ฐ€ ์Šค์Šค๋กœ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๋ถ€๋ถ„3. ๊ธฐ๋ณธ ์˜ˆ์ œํŒฉํ† ๋ฆฌ์–ผ ๊ณ„์‚ฐ$$n! = n × (n-1) × (n-2) × โˆ™โˆ™โˆ™ × 1$$def factorial(n): if n == 1: # ๊ธฐ์ € ์กฐ๊ฑด return 1 return n * factorial(n - 1) # ์žฌ๊ท€ ํ˜ธ์ถœ# ์‚ฌ์šฉ ์˜ˆ์‹œprint(factorial(5)) # ์ถœ๋ ฅ: 120 (5 × 4 × 3 × 2 × 1)4. ์žฌ๊ท€ ํ˜ธ์ถœ์˜ ๊ณผ์ •`factorial(5)` ์˜..
[250106] count() ์™€ Counter() ์˜ ์ฐจ์ด์ 
[SPARTA] AI 9 (24.11 ~ 25.03) ๐Ÿƒ๐Ÿป‍โ™€๏ธ/Python ๐Ÿ“˜
count() ๋ž€? ๐Ÿงฎ1. count() ์ •์˜python ์˜ ๋ฆฌ์ŠคํŠธ๋‚˜ ๋ฌธ์ž์—ด๊ณผ ๊ฐ™์€ ์‹œํ€€์Šค ๊ฐ์ฒด์—์„œ ํŠน์ • ๊ฐ’์˜ ๊ฐœ์ˆ˜๋ฅผ ์„ธ๋Š” ๋ฉ”์„œ๋“œ์ด๋‹ค๋‹จ์ˆœํžˆ ํ•˜๋‚˜์˜ ์š”์†Œ๊ฐ€ ๋ช‡ ๋ฒˆ ๋“ฑ์žฅํ–ˆ๋Š”์ง€๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค์–ธ์ œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ ์ ˆํ•œ์ง€:ํŠน์ • ๊ฐ’ ํ•˜๋‚˜๋งŒ ๋น ๋ฅด๊ฒŒ ํ™•์ธํ•˜๊ณ  ์‹ถ์„ ๊ฒฝ์šฐ์˜ˆ:๋ฆฌ์ŠคํŠธ์—์„œ ํŠน์ • ์š”์†Œ์˜ ์กด์žฌ ์—ฌ๋ถ€๋ฅผ ๊ฒ€์‚ฌํ•˜๊ณ ์ž ํ•  ๋•Œ2. count() ๊ธฐ๋ณธ ๋ฌธ๋ฒ•๊ตฌ๋ฌธsequence.count(value)์˜ˆ์ œ# ๋ฆฌ์ŠคํŠธ์—์„œ count ์‚ฌ์šฉnumbers = [1, 2, 2, 3, 3, 3]print(numbers.count(2)) # ์ถœ๋ ฅ: 2# ๋ฌธ์ž์—ด์—์„œ count ์‚ฌ์šฉtext = "hello world"print(text.count("l")) # ์ถœ๋ ฅ: 3ํŠน์ง•ํŠน์ • ๊ฐ’ ํ•˜๋‚˜๋งŒ์„ ์นด์šดํŠธ ํ•  ์ˆ˜ ์žˆ๋‹คO(n) ์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ฐ€์ง„๋‹ค(๋ฆฌ..
[250103] ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ๋ž€?
[SPARTA] AI 9 (24.11 ~ 25.03) ๐Ÿƒ๐Ÿป‍โ™€๏ธ/Python ๐Ÿ“˜
๋ฐ์ฝ”๋ ˆ์ดํ„ฐ๋ž€? โœจ1. ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ ์ •์˜๋ฐ์ฝ”๋ ˆ์ดํ„ฐ๋Š” ๊ธฐ์กด์˜ ํ•จ์ˆ˜๋‚˜ ๋ฉ”์„œ๋“œ์— ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ํŒŒ์ด์ฌ์˜ ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ์ด๋‹ค๋‹ค๋ฅธ ํ•จ์ˆ˜๋ฅผ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์•„ ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ณ ์ฐจ ํ•จ์ˆ˜(Higher-Order Function)์˜ ์ผ์ข…์ž„์ฃผ๋กœ ํ•จ์ˆ˜๋‚˜ ๋ฉ”์„œ๋“œ์˜ ์ „ํ›„์— ์‹คํ–‰๋  ๋กœ์ง์„ ์ถ”๊ฐ€ํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค2. ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ๊ธฐ๋ณธ ํ•จ์ˆ˜def my_function(): print("Hello, World!")๋ฐ์ฝ”๋ ˆ์ดํ„ฐ ํ•จ์ˆ˜ ์ •์˜def my_decorator(func): def wrapper(): print("Before the function call") func() # ์›๋ž˜ ํ•จ์ˆ˜ ์‹คํ–‰ print("After the function call") return..
[250102] instance method, class method, static method์˜ ํŠน์ง•๊ณผ ์ฐจ์ด์ 
[SPARTA] AI 9 (24.11 ~ 25.03) ๐Ÿƒ๐Ÿป‍โ™€๏ธ/Python ๐Ÿ“˜
์ธ์Šคํ„ด์Šค ๋ฉ”์„œ๋“œ (Instance Method) ๋ž€?1. ์ธ์Šคํ„ด์Šค ๋ฉ”์„œ๋“œ (Instance Method) ์ •์˜ํด๋ž˜์Šค ๋‚ด๋ถ€์—์„œ ์ƒ์„ฑ๋œ ์ธ์Šคํ„ด์Šค ๊ฐ์ฒด์— ์ ‘๊ทผํ•˜๋Š” ๋ฉ”์„œ๋“œ์ด๋‹คํŠน์ง•:์ฒซ ๋ฒˆ์งธ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ self๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค์ธ์Šคํ„ด์Šค ๋ณ€์ˆ˜์™€ ์ธ์Šคํ„ด์Šค ๋ฉ”์„œ๋“œ์— ์ ‘๊ทผ ๊ฐ€๋Šฅ๊ฐ์ฒด ๋ณ„๋กœ ๋‹ค๋ฅธ ๋™์ž‘์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Œ์‚ฌ์šฉ ์˜ˆ์‹œ: ์ธ์Šคํ„ด์Šค ๋ณ„ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜ ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•ด์•ผ ํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹คclass MyClass: def __init__(self, value): self.value = value def instance_method(self): return f"Instance value is {self.value}"obj = MyClass(10)print(obj.instance_method()) ..
[241227] sqrt() ์™€ pow() ๊ฐœ๋… ์ •๋ฆฌ
[SPARTA] AI 9 (24.11 ~ 25.03) ๐Ÿƒ๐Ÿป‍โ™€๏ธ/Python ๐Ÿ“˜
sqrt( ) ๋ž€? ๐Ÿงฎ1. sqrt() ์ •์˜Python ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ํ•™ ํ•จ์ˆ˜๋กœ, ํŠน์ • ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค:์ œ๊ณฑ๊ทผ(Square Root)์„ ๊ณ„์‚ฐ(=๋ฃจํŠธ ์”Œ์šด ๊ฐ’์„ ๋ฐ˜ํ™˜)์‚ฌ์šฉ๋ฒ•: math ๋ชจ๋“ˆ์—์„œ import ํ•ด์™€์•ผํ•จmath.sqrt(x) x๋Š” ์ œ๊ณฑ๊ทผ์„ ๊ตฌํ•  ์ˆ˜ ์žˆ๋Š” ์ˆซ์ž์ด๊ณ , ์–‘์ˆ˜ ๋˜๋Š” 0์ด์–ด์•ผ ํ•จ์Œ์ˆ˜๋ฅผ ์ž…๋ ฅํ•  ์‹œ ValueError ๊ฐ€ ๋ฐœ์ƒํ•จ๊ฒฐ๊ณผ๊ฐ’์ด float ํƒ€์ž…์˜ ํ˜•ํƒœ๋กœ ๋ฐ˜ํ™˜๋จ์˜ˆ:import mathprint(math.sqrt(16)) # ์ถœ๋ ฅ: 4.0print(math.sqrt(2)) # ์ถœ๋ ฅ: 1.4142135623730951pow( ) ๋ž€? ๐Ÿงฎ2. pow() ์ •์˜Python ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ํ•™ ํ•จ์ˆ˜๋กœ, ํŠน์ • ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค:ํŠน์ • ์ˆซ์ž์˜ ๊ฑฐ๋“ญ์ œ๊ณฑ(Power)์„ ๊ณ„์‚ฐ(=x์˜ ..