PYTHON, HTML, CSS ๊ฐœ๋…

์ฑ„์—ฐยท2024๋…„ 5์›” 10์ผ
0

study

๋ชฉ๋ก ๋ณด๊ธฐ
1/12
post-thumbnail

์Šคํ„ฐ๋”” ๋ชฉํ‘œ

PYTHON, HTML, CSS ๊ธฐ๋ณธ ๊ฐœ๋…์„ ๋ฐฐ์šฐ๊ณ  ์‹ค์Šต์„ ํ†ตํ•ด ์ฝ”๋“œ์˜ ๊ตฌ์กฐ๋ฅผ ์ดํ•ดํ•œ๋‹ค.


(1) PYTHON INPUT()

  • ๊ฐ’์„ ์ž…๋ ฅ ๋ฐ›๋Š” ํ•จ์ˆ˜
  • ์ •์ˆ˜๋กœ ์ž…๋ ฅ ๋ฐ›์„ ๋•Œ = INT(INPUT())
  • ์‹ค์ˆ˜๋กœ ์ž…๋ ฅ ๋ฐ›์„ ๋•Œ = FLOAT(INTPUT())

(2) PYTHON LIST

  • ์ˆœ์„œ๊ฐ€ ์žˆ๋Š” ์ˆ˜์ • ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด์˜ ์ง‘ํ•ฉ์œผ๋กœ ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.

(2-1) PYTHON LIST ๊ธฐ๋Šฅ

  • ๋ฆฌ์ŠคํŠธ ์ธ๋ฑ์‹ฑ = ํŠน์ • ์œ„์น˜์˜ ๋‹จ์ผ ํ•ญ๋ชฉ์„ ์„ ํƒํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.
  • ๋ฆฌ์ŠคํŠธ ์Šฌ๋ผ์ด์‹ฑ = ์ผ๋ถ€๋ถ„์„ ์ถ”์ถœํ•˜๋ฉฐ [start:stop:step] ํ˜•์‹์„ ์‚ฌ์šฉํ•œ๋‹ค.
  • ๋ฆฌ์ŠคํŠธ.append(๊ฐ’) = ๋งจ ๋’ค์— ๊ฐ’์„ ์ถ”๊ฐ€ํ•œ๋‹ค.
  • ๋ฆฌ์ŠคํŠธ.insert(์ธ๋ฑ์Šค, ๊ฐ’) = ์ธ๋ฑ์Šค์— ๊ฐ’์„ ์ถ”๊ฐ€ํ•œ๋‹ค.
  • ๋ฆฌ์ŠคํŠธ.sort() = ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ
  • ๋ฆฌ์ŠคํŠธ.reverse() = ๋ฆฌ์ŠคํŠธ์— ์žˆ๋Š” ๊ฐ’์„ ์—ญ์ˆœ์œผ๋กœ ํ‘œ์‹œํ•œ๋‹ค.
  • del ๋ฆฌ์ŠคํŠธ[์ธ๋ฑ์Šค] = ์ธ๋ฑ์Šค์— ์žˆ๋Š” ๊ฐ’์„ ์‚ญ์ œํ•œ๋‹ค.
  • ๋ฆฌ์ŠคํŠธ.remove(๊ฐ’) = ํ•ด๋‹นํ•˜๋Š” ๊ฐ’์„ ์‚ญ์ œํ•œ๋‹ค.
  • ๋ฆฌ์ŠคํŠธ.index(๊ฐ’) = ์ฐพ๊ณ ์ž ํ•˜๋Š” ๊ฐ’์˜ ์œ„์น˜๋ฅผ ์•Œ๋ ค์ค€๋‹ค.
  • ๋ฆฌ์ŠคํŠธ.pop() = ๋งˆ์ง€๋ง‰ ๊ฐ’์„ ๋ฐ˜ํ™˜ ํ›„ ๋ฆฌ์ŠคํŠธ์—์„œ ์ œ๊ฑฐํ•œ๋‹ค.
  • len(๋ฆฌ์ŠคํŠธ) = ๋ฆฌ์ŠคํŠธ์˜ ๊ฐ’ ๊ฐœ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

(3) PYTHON TUPLE

  • ์ˆœ์„œ๊ฐ€ ์žˆ๋Š” ์ง‘ํ•ฉ์œผ๋กœ (๋ณ€์ˆ˜, ๋ณ€์ˆ˜, ๋ณ€์ˆ˜)์˜ ๊ตฌ์กฐ๋ฅผ ๊ฐ–๋Š”๋‹ค.
  • ์ด๋•Œ ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œ๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

(+) PYTHON LIST, TUPLE

LIST์™€ TUPLE์€ ํƒ€์ž…๊ณผ ์ƒ๊ด€์—†์ด ์ผ๋ จ์˜ ์š”์†Œ๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ˆœ์„œ ๋˜ํ•œ ๊ด€๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ณตํ†ต์ ์ด ์žˆ์œผ๋‚˜, LIST๋Š” ๊ฐ€๋ณ€์ ์ด๊ณ  TUPLE์€ ๋ถˆ๋ณ€์ ์ด๋ผ๋Š” ์ฐจ์ด์ ์ด ์žˆ๋‹ค.

(4) PYTHON ์กฐ๊ฑด๋ฌธ IN, NOT IN

  • IN = ์ฐพ๊ณ ์ž ํ•˜๋Š” ๊ฐ’(X)์ด ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉด TRUE๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  • NOT IN = ์ฐพ๊ณ ์ž ํ•˜๋Š” ๊ฐ’(X)์ด ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฉด TRUE๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

(5) PYTHON DICTIONARY

  • KEY์™€ VALUE๋ฅผ ํ•œ ์Œ์œผ๋กœ ๊ฐ–๋Š” ์ž๋ฃŒํ˜•์œผ๋กœ ๋ถˆ๋ณ€ํ•œ KEY์™€ ๋ณ€ํ•  ์ˆ˜ ์žˆ๋Š” VALUE๋กœ MAPPING ๋˜์–ด ์žˆ๋Š” ์ˆœ์„œ๊ฐ€ ์—†๋Š” ์ง‘ํ•ฉ์ด๋‹ค.
  • ๊ธฐ๋ณธ ๊ตฌ์กฐ๋Š” {KEY:VALUE, KEY:VALUE, ...} ์ด๋‹ค.

(5-1) PYTHON DICTIONARY ๊ธฐ๋Šฅ

  • ์ถ”๊ฐ€ = ๋”•์…”๋„ˆ๋ฆฌ[KEY] = VALUE
  • ์‚ญ์ œ = DEL ๋”•์…”๋„ˆ๋ฆฌ[KEY]
  • ์ „์ฒด ์‚ญ์ œ = ๋”•์…”๋„ˆ๋ฆฌ๋ช….CLEAR()
  • DICTIONARY ๊ฐ’ ๊ฐ€์ ธ์˜ค๊ธฐ(1) = ๋”•์…”๋„ˆ๋ฆฌ๋ช….KEYS(), ๋”•์…”๋„ˆ๋ฆฌ๋ช….VALUES()
  • DICTIONARY ๊ฐ’ ๊ฐ€์ ธ์˜ค๊ธฐ(2) = KEY in ๋”•์…”๋„ˆ๋ฆฌ๋ช…

(6) PYTHON ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž

  • ๋”ํ•˜๊ธฐ = +
  • ๋นผ๊ธฐ = -
  • ๊ณฑํ•˜๊ธฐ = *
  • ๋‚˜๋ˆ„๊ธฐ = /
  • ๋‚˜๋ˆ„๊ธฐ(๋ชซ) = //
  • ๋‚˜๋ˆ„๊ธฐ(๋‚˜๋จธ์ง€) = %

(7) PYTHON ํฌ๋งทํŒ… ๋ฐฉ์‹

  • ์ •์ˆ˜ = (์†Œ์Šค์ฝ”๋“œ) %d
  • ์‹ค์ˆ˜ = (์†Œ์Šค์ฝ”๋“œ) %f
  • ๋ฌธ์ž = (์†Œ์Šค์ฝ”๋“œ) %s
  • ๋ฌธ์ž 1๊ฐœ = (์†Œ์Šค์ฝ”๋“œ) %c
  • 8์ง„์ˆ˜ = (์†Œ์Šค์ฝ”๋“œ) %o
  • 16์ง„์ˆ˜ = (์†Œ์Šค์ฝ”๋“œ) %x

(8) PYTHON ๋น„๊ต ์—ฐ์‚ฐ์ž

  • A > B (A๊ฐ€ B๋ณด๋‹ค ํฌ๋‹ค.)
  • A >= B (A๊ฐ€ B๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๋‹ค.)
  • A < B (A๊ฐ€ B๋ณด๋‹ค ์ž‘๋‹ค.)
  • A =< B (A๊ฐ€ B๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค.)
  • A == B (A์™€ B๋Š” ๊ฐ™๋‹ค.)
  • A != B (A์™€ B๋Š” ๊ฐ™์ง€ ์•Š๋‹ค.)

(9) PYTHON ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž

  • NOT = ๋…ผ๋ฆฌ ๊ฐ’์„ ๋’ค์ง‘๋Š” ์—ญํ• 
  • AND = ๋‘ ๊ฐ’์ด ๋ชจ๋‘ TRUE์ผ ๋•Œ๋งŒ TRUE
  • OR = ๋‘ ๊ฐ’์ด ํ•˜๋‚˜๋ผ๋„ TRUE์ด๋ฉด TRUE

(10) PYTHON ์กฐ๊ฑด๋ฌธ IF

  • ์ƒํ™ฉ์— ๋”ฐ๋ผ ์‹คํ–‰ ํ๋ฆ„์„ ๋‹ค๋ฅด๊ฒŒ ํ•˜๋Š” ๋ฌธ๋ฒ•์œผ๋กœ ์กฐ๊ฑด์‹์ด TRUE์ผ ๊ฒฝ์šฐ ๋ฌธ์žฅ์„ ์‹คํ–‰ํ•œ๋‹ค.

(11) PYTHON ์กฐ๊ฑด๋ฌธ IF ELSE

  • ์กฐ๊ฑด์‹์ด TRUE์ผ ๊ฒฝ์šฐ, ์‹คํ–‰ ๋ฌธ์žฅ1์„ ์‹คํ–‰ํ•œ๋‹ค.
  • ์กฐ๊ฑด์‹์ด FALSE์ผ ๊ฒฝ์šฐ, ์‹คํ–‰ ๋ฌธ์žฅ2์„ ์‹คํ–‰ํ•œ๋‹ค.

(12) PYTHON ์กฐ๊ฑด๋ฌธ ELIF

  • ์กฐ๊ฑด์‹์ด TRUE์ผ ๊ฒฝ์šฐ, ์‹คํ–‰ ๋ฌธ์žฅ1์„ ์‹คํ–‰ํ•œ๋‹ค.
  • ์กฐ๊ฑด์‹์ด FALSE์ผ ๊ฒฝ์šฐ ๋‹ค์Œ ์กฐ๊ฑด์‹์„ ํ™•์ธํ•œ๋‹ค.

(+) PYTHON ์กฐ๊ฑด๋ฌธ ์˜ˆ์ œ

## ์กฐ๊ฑด๋ฌธ ์˜ˆ์ œ
## 1. ๋ณ€์ˆ˜ MONEY๋ฅผ ์ž…๋ ฅ ๋ฐ›๊ณ  10000์› ์ด์ƒ์ด๋ฉด "ํƒ์‹œ๋ฅผ ํƒ„๋‹ค."๋ฅผ ์ถœ๋ ฅํ•˜๊ณ  ์ดํ•˜์ด๋ฉด "๋ฒ„์Šค๋ฅผ ํƒ„๋‹ค."๋ฅผ ์ถœ๋ ฅํ•˜์‹œ์˜ค

MONEY = int(input("๋ˆ์„ ์ž…๋ ฅํ•˜์„ธ์š”: "))

if MONEY >= 10000:
    print("ํƒ์‹œ๋ฅผ ํƒ„๋‹ค.")
else:
    print("๋ฒ„์Šค๋ฅผ ํƒ„๋‹ค.")
## ์กฐ๊ฑด๋ฌธ ์˜ˆ์ œ
## 2. ์ ์ˆ˜๋ฅผ ์ž…๋ ฅ ๋ฐ›์•„ ํ•™์ ์„ ์•Œ๋ ค์ฃผ๋Š” ํ•™์  ๊ณ„์‚ฐ๊ธฐ๋ฅผ ๋งŒ๋“ค์–ด ๋ณด์‹œ์˜ค

score = int(input("์ ์ˆ˜๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”: "))

if score >= 90:
    grade = 'A'
elif score >= 80:
    grade = 'B'
elif score >= 70:
    grade = 'C'
elif score >= 60:
    grade = 'D'
else:
    grade = 'F'

print("ํ•™์ ์€ %s ์ž…๋‹ˆ๋‹ค." % grade)

(13) PYTHON ์‚ผํ•ญ ์—ฐ์‚ฐ์ž

  • A IF ์กฐ๊ฑด์‹ ELSE B
  • ์กฐ๊ฑด์‹์ด TRUE์ด๋ฉด A, FALSE์ด๋ฉดB B

(14) PYTHON ๋ฐ˜๋ณต๋ฌธ

  • ํ”„๋กœ๊ทธ๋žจ ๋‚ด์—์„œ ๋˜‘๊ฐ™์€ ๋ช…๋ น์„ ์ผ์ • ํšŸ์ˆ˜๋งŒํผ ๋ฐ˜๋ณตํ•˜์—ฌ ์ˆ˜ํ–‰ํ•˜๋„๋ก ์ œ์–ดํ•˜๋Š” ๋ช…๋ น๋ฌธ์ด๋‹ค.

(15) PYTHON ๋ฐ˜๋ณต๋ฌธ WHILE๋ฌธ

  • ์กฐ๊ฑด์‹์ด TRUE์ผ ๊ฒฝ์šฐ, ์‹คํ–‰ ๋ฌธ์žฅ์„ ๋ฐ˜๋ณตํ•œ๋‹ค.
  • ๋ฐ˜๋ณต๋ฌธ์„ ๋‚˜๊ฐˆ ๋•Œ์—๋Š” BREAK๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

(16) PYTHON ๋ฐ˜๋ณต๋ฌธ FOR๋ฌธ

  • ๋ฌธ์ž์—ด ๋˜๋Š” ๋ฆฌ์ŠคํŠธ, ํŠœํ”Œ์ด ๋“ค์–ด๊ฐ”์„ ๋•Œ ์•ˆ์— ์žˆ๋Š” ์š”์†Œ๋ฅผ ํ•˜๋‚˜์”ฉ ๋ฐ˜๋ณตํ•œ๋‹ค.

(+) PYTHON ๋ฐ˜๋ณต๋ฌธ ์˜ˆ์ œ

## ๋ฐ˜๋ณต๋ฌธ ์˜ˆ์ œ
## 1. ๋‘ ๊ฐœ์˜ ์ •์ˆ˜๋ฅผ ์ž…๋ ฅ ๋ฐ›์•„ ๋”ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด๋ณด์‹œ์˜ค
## (๋‹จ, ๋‘ ๊ฐœ์˜ ์ •์ˆ˜๊ฐ€ 0์ด ๋“ค์–ด์˜ฌ ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•  ๊ฒƒ, ํฌ๋งทํŒ… ๋ฐฉ์‹ ์†Œ์Šค์ฝ”๋“œ ์‚ฌ์šฉ, while๋ฌธ ์‚ฌ์šฉ)

while True:
    num1 = int(input("์ฒซ ๋ฒˆ์งธ ์ •์ˆ˜๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”: "))
    num2 = int(input("๋‘ ๋ฒˆ์งธ ์ •์ˆ˜๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”: "))
    
    if num1 == 0 and num2 == 0:
        print("ํ”„๋กœ๊ทธ๋žจ์„ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.")
        break
    
    result = num1 + num2
    print("%d + %d = %d" % (num1, num2, result))
## ๋ฐ˜๋ณต๋ฌธ ์˜ˆ์ œ
## 2. ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์‹œํ—˜ ์ ์ˆ˜๊ฐ€ ๋ฆฌ์ŠคํŠธ์— ๋‹ด๊ฒจ ์žˆ์„ ๋•Œ, ๊ฐ ์ ์ˆ˜๊ฐ€ ํ•ฉ๊ฒฉ ์ ์ˆ˜์ธ์ง€ ํŒ๋ณ„ํ•˜๋ฉฐ ์ถœ๋ ฅํ•ด ๋ณด์‹œ์˜ค (60์  ์ด์ƒ ํ•ฉ๊ฒฉ)
## score_list = [90, 45, 70, 60, 55]
## number ๋ผ๋Š” ๋ณ€์ˆ˜ ํ•˜๋‚˜ ๋” ์‚ฌ์šฉํ•˜๊ธฐ

score_list = [90, 45, 70, 60, 55]
number = 1

for score in score_list:
    if score >= 60:
        print("%d๋ฒˆ์งธ ํ•™์ƒ์˜ ์ ์ˆ˜๋Š” %d์ด๋ฉฐ, ํ•ฉ๊ฒฉ์ž…๋‹ˆ๋‹ค." % (number, score))
    else:
        print("%d๋ฒˆ์งธ ํ•™์ƒ์˜ ์ ์ˆ˜๋Š” %d์ด๋ฉฐ, ๋ถˆํ•ฉ๊ฒฉ์ž…๋‹ˆ๋‹ค." % (number, score))
    number += 1 ## ๋ช‡ ๋ฒˆ์งธ ํ•™์ƒ์ธ์ง€๋ฅผ ํ‘œ์‹œ (= number = number + 1)

(17) PYTHON RANGE()

  • ํ•„์š”ํ•œ ๋งŒํผ์˜ ์ˆซ์ž๋ฅผ ๋งŒ๋“ค์–ด๋‚ด๋Š” ์œ ์šฉํ•œ ๊ธฐ๋Šฅ์ด๋‹ค.
  • range(์‹œ์ž‘ํ•  ์ˆซ์ž, ์ข…๋ฃŒํ•  ์ˆซ์ž, ์ฆ๊ฐ€๋Ÿ‰)
  • range(๊ธฐ๋ณธ๊ฐ’ 0, ์ข…๋ฃŒํ•  ์ˆซ์ž, ๊ธฐ๋ณธ๊ฐ’ 1)

(18) PYTHON ํ•จ์ˆ˜

  • ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” def(ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ์˜ˆ์•ฝ์–ด)๋ผ๋Š” ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
  • ํ•จ์ˆ˜๋ช…์€ ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“œ๋Š” ์‚ฌ๋žŒ์ด ์ž„์˜๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

(+) PYTHON ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 

  • ๋ฐ˜๋ณต์ ์ธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ”ผํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ชจ๋“ˆํ™”๋กœ ์ธํ•ด ์ „์ฒด์ ์ธ ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ์ด ์ข‹์•„์ง„๋‹ค.
  • ํ”„๋กœ๊ทธ๋žจ์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๊ฑฐ๋‚˜ ๊ธฐ๋Šฅ์˜ ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•  ๋•Œ์—๋„ ์†์‰ฝ๊ฒŒ ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.

(19) PYTHON ๊ฐ์ฒด์ง€ํ–ฅ๊ณผ ํด๋ž˜์Šค

  • ๊ฐ์ฒด = ์„œ๋กœ ์—ฐ๊ด€๋œ ๋ฐ์ดํ„ฐ์™€ ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์ž‘ํ•˜๊ธฐ ์œ„ํ•œ ํ•จ์ˆ˜๋ฅผ ํ•˜๋‚˜์˜ ์ง‘ํ•ฉ์— ๋ชจ์•„๋†“์€ ๊ฒƒ
  • ๋ฉค๋ฒ„(์†์„ฑ) = ์ง‘ํ•ฉ์˜ ์›์†Œ๊ฐ€ ๋˜๋Š” ๋ณ€์ˆ˜๋‚˜ ํ•จ์ˆ˜
  • ๋ฉ”์„œ๋“œ = ๊ฐ์ฒด์˜ ์†์„ฑ์ธ ํ•จ์ˆ˜

(20) PYTHON ์ƒ์„ฑ์ž

  • ํด๋ž˜์Šค ๋‚ด์—์„œ ํŠน๋ณ„ํ•œ ์ด๋ฆ„(init)์„ ๊ฐ–๊ธฐ๋งŒ ํ•˜๋ฉด ๊ฐ์ฒด๊ฐ€ ์ƒ์„ฑ๋  ๋•Œ ์ž๋™์œผ๋กœ ํ˜ธ์ถœ๋˜๋Š” ํ•จ์ˆ˜๊ฐ€ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.

(21) PYTHON ํด๋ž˜์Šค

  • ๋ถ€๋ชจ ํด๋ž˜์Šค(SUPER CLASS)
  • ์ž์‹ ํด๋ž˜์Šค(SUB CLASS, CHILD CLASS)
  • ํด๋ž˜์Šค์˜ ์ƒ์†์€ ๊ธฐ์กด ํด๋ž˜์Šค์— ์žˆ๋Š” ํ•„๋“œ์™€ ๋ฉ”์„œ๋“œ๋ฅผ ๊ทธ๋Œ€๋กœ ๋ฌผ๋ ค๋ฐ›๋Š” ์ƒˆ๋กœ์šด ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด๋‹ค.

(+) PYTHON ํด๋ž˜์Šค ์˜ˆ์ œ

## ๋ถ€๋ชจ ํด๋ž˜์Šค๋Š” ์ž์‹ ํด๋ž˜์Šค์— ๋Œ€ํ•ด ์ผ๋ฐ˜์ ์ธ ํŠน์„ฑ๊ณผ ๋™์ž‘์„ ์ •์˜
## ์ž์‹ ํด๋ž˜์Šค๋Š” ๋ถ€๋ชจ ํด๋ž˜์Šค์˜ ํŠน์„ฑ์„ ์ƒ์†๋ฐ›๊ณ  ํ•„์š”์— ๋”ฐ๋ผ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ํ™•์žฅํ•  ์ˆ˜ ์žˆ์Œ

class Animal:
    def __init__(self, name):
        self.name = name
    
    def speak(self):
        print(f"{self.name}์ด(๊ฐ€) ์†Œ๋ฆฌ๋ฅผ ๋ƒ…๋‹ˆ๋‹ค.")

class Dog(Animal):  # Animal ํด๋ž˜์Šค๋ฅผ ์ƒ์†๋ฐ›์Œ
    def speak(self):
        print(f"{self.name}์ด(๊ฐ€) ๋ฉ๋ฉ ์ง–์Šต๋‹ˆ๋‹ค.")

class Cat(Animal):  # Animal ํด๋ž˜์Šค๋ฅผ ์ƒ์†๋ฐ›์Œ
    def speak(self):
        print(f"{self.name}์ด(๊ฐ€) ์•ผ์˜น ์†Œ๋ฆฌ๋ฅผ ๋ƒ…๋‹ˆ๋‹ค.")

## Animal ํด๋ž˜์Šค๋Š” name ์†์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ speak ๋ฉ”์„œ๋“œ๋ฅผ ์ •์˜ํ•จ
## Dog ํด๋ž˜์Šค์™€ Cat ํด๋ž˜์Šค๋Š” ๊ฐ๊ฐ Animal ํด๋ž˜์Šค๋ฅผ ์ƒ์†๋ฐ›์Œ
## ๊ฐ๊ฐ speak ๋ฉ”์„œ๋“œ๋ฅผ ์˜ค๋ฒ„๋ผ์ด๋”ฉํ•˜์—ฌ ๊ฐ๊ฐ์˜ ๋™๋ฌผ์ด ๋‹ค๋ฅธ ์†Œ๋ฆฌ๋ฅผ ๋‚ด๋„๋ก ํ•จ

dog = Dog("๋ฉ๋ฉ")
dog.speak()  # ๊ฒฐ๊ณผ: ๋ฉ๋ฉ์ด(๊ฐ€) ๋ฉ๋ฉ ์ง–์Šต๋‹ˆ๋‹ค.

cat = Cat("์•ผ์˜น")
cat.speak()  # ๊ฒฐ๊ณผ: ์•ผ์˜น์ด(๊ฐ€) ์•ผ์˜น ์†Œ๋ฆฌ๋ฅผ ๋ƒ…๋‹ˆ๋‹ค.

## ๋ชจ๋“  ํŠน์„ฑ๊ณผ ๋™์ž‘์„ ์ƒ์†๋ฐ›์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ•„์š”์— ๋”ฐ๋ผ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Œ

(1) HTML

  • ๋งˆํฌ์—…(Mark-up) ์–ธ์–ด๋กœ, ์›น ํŽ˜์ด์ง€์˜ ๊ธฐ๋ณธ์ ์ธ ํ˜•ํƒœ๋ฅผ ๋งŒ๋“œ๋Š” ์ฝ”๋“œ์ด๋‹ค.
  • ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๊ฐ€ ์•„๋‹ˆ๊ธฐ์—, ์—ฐ์‚ฐ์ด๋‚˜ ํ†ต์‹  ๊ฐ™์€ ๊ธฐ๋Šฅ์€ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์—†๋‹ค.
  • ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•ด ๋ฌธ์„œ์˜ ๋‹ค๋ฅธ ํ…์ŠคํŠธ์™€ ๊ตฌ๋ถ„ํ•œ๋‹ค.
  • ์›น์„ ์ด๋ฃจ๋Š” ๊ฐ€์žฅ ๊ธฐ์ดˆ์ ์ธ ๊ตฌ์„ฑ ์š”์†Œ์ด๋‹ค.

(2) CSS

  • HTML์ด ํ…์ŠคํŠธ๋‚˜ ์ด๋ฏธ์ง€, ํ‘œ์™€ ๊ฐ™์€ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์›น ๋ฌธ์„œ์— ๋„ฃ์–ด ๋ผˆ๋Œ€๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด๋ผ๋ฉด CSS๋Š” ์ƒ‰์ƒ์ด๋‚˜ ํฌ๊ธฐ, ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋‚˜ ์œ„์น˜, ๋ฐฐ์น˜ ๋ฐฉ๋ฒ• ๋“ฑ ์›น ๋ฌธ์„œ์˜ ๋””์ž์ธ ์š”์†Œ๋ฅผ ๋‹ด๋‹นํ•œ๋‹ค.
  • Style sheet ์–ธ์–ด๋กœ HTML ๋ฌธ์„œ์— ์žˆ๋Š” ์š”์†Œ๋“ค์— ์„ ํƒ์ ์œผ๋กœ ์Šคํƒ€์ผ์„ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
  • HTML๊ณผ ํ•จ๊ป˜ ์›น์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ธฐ๋ณธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์š”์†Œ์ด๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€