Jayden`s

    __init.py__์˜ ํ™œ์šฉ

    A๋ผ๋Š” ํด๋”์— a.py , b.py๊ฐ€ ์žˆ๋‹ค. A๋ผ๋Š” ํด๋”์— __init.py__๋ฅผ ๋งŒ๋“ค์–ด์ฃผ๋ฉด A ํด๋” ์ž์ฒด๊ฐ€ ํ•˜๋‚˜์˜ ๋ชจ๋“ˆ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ฒ˜๋Ÿผ ๋˜๊ณ  b.py ์—์„œ a.py์—์„œ ์ •์˜๋œ ํ•จ์ˆ˜๋ฅผ ๊ฐ€์ ธ์˜ค๊ณ  ์‹ถ์„ ๋•Œ, from A.a import function # a.py์—์„œ ์ •์˜ํ•œ ํ•จ์ˆ˜์œ„์™€ ๊ฐ™์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. __init.py__ ๊ฐ€ ์—†์–ด๋„ a์™€ b๊ฐ€ ๊ฐ™์€ ํด๋”์— ์žˆ๋‹ค๋ฉด ๊ทธ๋ƒฅ import ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๋‹ค๋ฅธ ์žฅ์†Œ์— ์žˆ๋Š” ํŒŒ์ผ์˜ ํ•จ์ˆ˜๋ฅผ import ํ•  ๋•Œ ์œ ์šฉํ•˜๋‹ค!

    [TIL]55. NoSQL

    ํ‚ค์›Œ๋“œ : NoSQL, JSON, MongoDB, Pymongo NoSQL ๋‹จ์–ด ์œ ๋ž˜ : ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(RDB)๋Š” ํ•˜๋‚˜์˜ ๊ณตํ†ต๋œ ํŠน์„ฑ์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํŠน์„ฑ์— ๋”ฐ๋ผ ๋ถ„๋ฅ˜๊ฐ€ ๋˜๋Š” ๋ฐ˜๋ฉด NoSQL์€ ๋ง๊ทธ๋Œ€๋กœ 'SQL์ด ์•„๋‹ˆ๋‹ค'์˜ ์˜๋ฏธ๋กœ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์•„๋‹Œ ๋น„๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ์ฆ‰, NoSQL์€ DB๋งˆ๋‹ค ์•„์˜ˆ ๋‹ค๋ฅด๋‹ค๊ณ  ํ•  ์ •๋„๋กœ ์ฐจ์ด๊ฐ€ ํฝ๋‹ˆ๋‹ค. ๋“ฑ์žฅ ๋ฐฐ๊ฒฝ : 2000๋…„๋Œ€ ์ดˆ๋ฐ˜ ์›น์˜ ๋ฐœ์ „์— ๋”ฐ๋ผ ์›น์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์ˆ˜๋งŽ์€ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃจ๋ฉด์„œ ๋ฐœ์ „ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ์›น ํ™˜๊ฒฝ์ด ๋Œ€๋‘๋˜๊ธฐ ์‹œ์ž‘ํ•œ ๋ฐ์ดํ„ฐ๋“ค์˜ ํŠน์„ฑ ์†Œ์Šค์™€ ๋ฐ์ดํ„ฐ์˜ ์–‘์ด ๊ธฐํ•˜๊ธ‰์ˆ˜์ ์œผ๋กœ ์ฆ๊ฐ€ ์›น ์„œ๋น„์Šค์˜ ๋ฐ์ดํ„ฐ๋Š” xml, json์œผ๋กœ ์ฒ˜๋ฆฌ๋˜๋Š”๋ฐ RDB๋กœ ์ฒ˜๋ฆฌํ•˜๊ธฐ์—” ๋ฐ์ดํ„ฐ ์„ค๊ณ„์‹œ๊ฐ„(์Šคํ‚ค๋งˆ ๊ตฌ์กฐ๋ฅผ ์งœ๋Š” ๋“ฑ)์ด ๋„ˆ๋ฌด ์˜ค๋ž˜..

    [TIL]54. API

    ํ‚ค์›Œ๋“œ : API, RESTful API API(Application Programming Interface) ํ”„๋กœ๊ทธ๋žจ๋“ค์ด ์„œ๋กœ ์†Œํ†ตํ•  ์ˆ˜ ์žˆ๋Š” ์ธํ„ฐํŽ˜์ด์Šค ํ”„๋กœ๊ทธ๋žจ์„ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๋Š” ์กฐ์ž‘ ๋ฐฉ๋ฒ• ํ˜น์€ ๋ฉ”๋‰ด์–ผ ์Œ์‹์ ์— ๋“ค์–ด๊ฐ„๋‹ค. ๋ฉ”๋‰ด๋ฅผ ๋ณด๊ณ  ์ฃผ๋ฌธ์„ ํ•œ๋‹ค. ์ฃผ๋ฐฉ์— ์ฃผ๋ฌธ ๋‚ด์šฉ์„ ์ „๋‹ฌํ•œ๋‹ค. ์ฃผ๋ฌธ๋œ ์Œ์‹์„ ๋งŒ๋“ ๋‹ค. ์™„์„ฑ๋œ ์Œ์‹์„ ์†๋‹˜์—๊ฒŒ ๋“œ๋ฆฐ๋‹ค. ํด๋ผ์ด์–ธํŠธ : ์Œ์‹์ ์—์„œ ๋ญ”๊ฐ€๋ฅผ ์š”์ฒญํ•˜๋Š” '์†๋‹˜' ๋ฉ”๋‰ดํŒ : API(์‚ฌ์ „์— ์•ฝ์†๋œ ๊ทœ์น™๋“ค๊ณผ ์ ˆ์ฐจ) (API)์„œ๋ฒ„ : ์›จ์ดํ„ฐ(์Œ์‹์„ ์ฃผ๋ฌธํ•˜๋ฉด ์Œ์‹์„ ์ „๋‹ฌํ•ด์ฃผ๋Š” ์—ญํ• ) (Service)์„œ๋ฒ„ : ์š”๋ฆฌ์‚ฌ(์‹ค์งˆ์ ์œผ๋กœ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์—ญํ• ) ๋ฉ”๋‰ดํŒ์€ ๋‹จ์ง€ ๋ฌธ์„œ์ธ ๊ฒƒ์ฒ˜๋Ÿผ API ์—ญ์‹œ ์‹ค์ฒด๊ฐ€ ์—†๋‹ค. ์Œ์‹์„ ๋ฐ›์•„์•ผ ๊ทธ ์Œ์‹์˜ ์‹ค์ œ ๋‚ด์šฉ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋“ฏ์ด, API ์—ญ์‹œ ๊ฒฐ๊ณผ ..

    [TIL]53. Web_Scraping

    keyword : ํฌ๋กค๋ง, ์›น ์Šคํฌ๋ ˆ์ดํ•‘, HTML/CSS/JS, DOM, Request, BeautifulSoup HTML/CSS/JS HTML : ์›น์˜ ๊ตฌ์กฐ๋ฅผ ์„ค์ •ํ•ด์ฃผ๋Š” ์–ธ์–ด(๊ฐ–๋‹ค๋†“๊ธฐ) Element : ์š”์†Œ ๋ผ๋Š” ์˜๋ฏธ๋กœ head, body, div ๋“ฑ๊ณผ ๊ฐ™์€ ํƒœ๊ทธ๋กœ ํ‘œํ˜„๋˜๋ฉฐ ๊ตฌ์„ฑ ๋‚ด์—์„œ์˜ ์—ญํ• ์„ ๋‚˜ํƒ€๋‚ด์ค€๋‹ค.(์›น ์Šคํฌ๋ ˆ์ดํ•‘ ์‹œ, ํƒœ๊ทธ๋ฅผ ํ†ตํ•ด ๊ฐ€์ ธ์˜ค๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์œผ๋ฏ€๋กœ ์•Œ์•„๋‘๊ธฐ) Parent/Children Hello World ! ul ์€ li ์˜ ์ƒ์œ„ ํƒœ๊ทธ, li๋Š” ul์˜ ํ•˜์œ„ ํƒœ๊ทธ CSS : HTML์— ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์Šคํƒ€์ผ์„ ๋„ฃ์–ด์ฃผ๋Š” ์–ธ์–ด(๊พธ๋ฏธ๊ณ ) Selector : ํŠน์ • ์š”์†Œ๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•, ๋” ์‰ฝ๊ฒŒ ์›ํ•˜๋Š” ์š”์†Œ๋“ค์„ ์„ ํƒํ•ด ์ ‘๊ทผ ๊ฐ€๋Šฅ Type selector: CSS ํƒ€์ž…์— ๋”ฐ๋ผ์„œ ์„ ํƒํ•  ์ˆ˜ ..

    [Python]Decorator

    ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ(@) ์–ด์ƒ‰ํ•˜๊ณ  ๋ฐ˜๋ณต์ ์ธ ํ•จ์ˆ˜์˜ ํ‘œํ˜„์„ ์ค„์ด๊ธฐ ์œ„ํ•ด ์ œ์•ˆ ํ•จ์ˆ˜ ์™ธ์—๋„ ํด๋ž˜์Šค, ์ œ๋„ˆ๋ ˆ์ดํ„ฐ ๋“ฑ ๋‹ค์–‘ํ•œ ํƒ€์ž…์—์„œ๋„ ์‚ฌ์šฉ ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ -> ๋ง ๊ทธ๋Œ€๋กœ ํ•จ์ˆ˜๋ฅผ '๊พธ๋ฉฐ์ฃผ๋Š”' ํ˜น์€ '์žฅ์‹ํ•˜๋Š”', 'ํฌ์žฅํ•˜๋Š”' ๊ธฐ๋Šฅ ์ฐธ๊ณ :pep318 ํ•จ์ˆ˜์˜ ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ(@) ์˜ˆ์‹œ๋ถ€ํ„ฐ ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. def one(): print("Hello") print("one์ด๋ผ๋Š” ํ•จ์ˆ˜") def two(): print("Hello") print("two๋ผ๋Š” ํ•จ์ˆ˜") def three(): print("Hello") print("three๋ผ๋Š” ํ•จ์ˆ˜") ์œ„์˜ ์˜ˆ์‹œ๋Š” ์•„์ฃผ ๊ฐ„๋‹จํ•˜๊ธฐ์— ๊ฐ์ด ์•ˆ์˜ฌ ์ˆ˜ ์žˆ์ง€๋งŒ, ๊ณตํ†ต์ ์œผ๋กœ ๋“ค์–ด๊ฐ„ print("Hello")๋ฅผ ํ•œ๋ฒˆ์— ๋ฌถ์–ด์„œ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. def Hello_de..