[boostcourse] PY4E 1.μ†Œκ°œπŸ–

yongseokΒ·2022λ…„ 9μ›” 2일
0

Boostcourse

λͺ©λ‘ 보기
2/8
post-thumbnail

λΆ€μŠ€νŠΈμ½”μŠ€ μ½”μΉ­μŠ€ν„°λ”” λͺ¨λ‘λ₯Ό μœ„ν•œ 파이썬(PY4E)λ₯Ό ν†΅ν•΄μ„œ Python을 ν•™μŠ΅ν•œ κ°œλ…μ„ μ •λ¦¬ν•˜κ³  좔가적인 λ³΅μŠ΅μ„ μœ„ν•œ λ¬Έμ œν’€μ΄ ν¬μŠ€νŒ…μž…λ‹ˆλ‹€.

λΆ€μŠ€νŠΈμ½”μŠ€

개인적으둜 λ‹€μ–‘ν•œ κ²½ν—˜μ΄ μ„±μž₯을 λ§Œλ“€μ–΄ λ‚Έλ‹€κ³  μƒκ°ν•˜κ³  μžˆμ–΄, κ²½ν—˜μ— λŒ€ν•œ μš•μ‹¬μ΄ λ§Žμ€ 편이라 이번 7~8월은 λ¬΄λ¦¬ν•œ κ³„νšμ„ μ„Έμš°κ³  μ‹€μ²œν•œ 것 κ°™λ‹€.

넀이버 컀λ„₯νŠΈμž¬λ‹¨μ˜ λΆ€μŠ€νŠΈμΊ ν”„λ₯Ό μ§€μ›ν•˜κ³  μ€€λΉ„ν•˜λ©΄μ„œ 처음으둜 λΆ€μŠ€νŠΈμ½”μŠ€λ₯Ό μ•Œκ²Œ λ˜μ—ˆκ³ , 마침 μ½”μΉ­μŠ€ν„°λ””λ₯Ό λͺ¨μ§‘ν•˜λŠ” 곡지λ₯Ό 보고, μž¬λ―Έμžˆκ² λ‹€λŠ” 생각을 가지고 μ‹ μ²­ν–ˆλ‹€.

2022.07.14~08.25(6μ£Ό)κ°„ μ§„ν–‰λœ λΆ€μŠ€νŠΈμ½”μŠ€ λͺ¨λ‘λ₯Ό μœ„ν•œ 파이썬(PY4E) μ½”μΉ­μŠ€ν„°λ””μ— μ°Έμ—¬ν•΄ λ‹¨μˆœν•˜κ²Œ Python을 배우고 ν•™μŠ΅ν•˜λŠ” 것에 κ·ΈμΉ˜μ§€ μ•Šκ³ , 더 μ½”λ”©μŠ΅κ΄€κ³Ό ν•™μŠ΅νƒœλ„μ˜ μΈ‘λ©΄μ—μ„œλ„ 배울 수 μžˆμ—ˆλ‹€.

PY4Eλž€?

Charles R. Severance κ΅μˆ˜λ‹˜μ˜ Python for Everybody 'λͺ¨λ‘λ₯Ό μœ„ν•œ 파이썬' μ΄λž€ κ°•μ˜μ΄λ‹€.(링크)

μœ νŠœλΈŒλ‚˜ μœ„ 링크λ₯Ό ν†΅ν•΄μ„œ ν•™μŠ΅ ν•˜κ±°λ‚˜, 넀이버 컀λ„₯νŠΈμž¬λ‹¨μ˜ λΆ€μŠ€νŠΈμ½”μŠ€ λͺ¨λ‘λ₯Ό μœ„ν•œ 파이썬 (PY4E)λ₯Ό ν†΅ν•΄μ„œ μˆ˜κ°•ν•  수 μžˆλ‹€.

μˆ˜κ°• λŒ€μƒμ€ 1. ν”„λ‘œκ·Έλž˜λ°μ„ 파이썬으둜 처음 μ‹œμž‘ν•˜κ³  μ‹ΆμœΌμ‹  λΆ„ 2. 컴퓨터 κ³Όν•™μ΄λ‚˜ κ΄€λ ¨ 지식은 없어도 ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄λ₯Ό ν•™μŠ΅ν•˜κ³ μ‹ΆμœΌμ‹  λΆ„ 3. 파이썬으둜 μ‘μš© ν”„λ‘œκ·Έλž¨μ„ 짜보고 μ‹ΆμœΌμ‹  뢄을 λŒ€μƒμœΌλ‘œ ν•œλ‹€.

μš”μ¦˜ μ½”λ”© ꡐ윑이 μƒν’ˆν™”κ°€ κ³Όμ—΄λ˜κ³  μžˆλ‹€κ³  μƒκ°ν•˜λŠ”λ°, 무료둜 μ–‘μ§ˆμ˜ κ΅μœ‘μ„ 받을 수 μžˆλŠ” 곳으둜 첫 ν”„λ‘œκ·Έλž˜λ° κ³΅λΆ€λ‘œ, νŒŒμ΄μ¬μ„ ν™œμš©μ΄ ν•„μš”ν•  λ•Œ μ‚¬μ „ν•™μŠ΅μœΌλ‘œ 적극 μΆ”μ²œν•œλ‹€.

수료증

진도체크와 ν€΄μ¦ˆμ œμΆœμ„ ν•˜λ©΄ ν•™μŠ΅μ„ μ™„λ£Œν•  수 있고, 넀이버 컀λ„₯νŠΈμž¬λ‹¨μ—μ„œ μˆ˜λ£Œμ¦μ„ λ°œκΈ‰ν•΄μ€€λ‹€.

μ•žμœΌλ‘œ 무엇을 리뷰할 것 인가?

과정을 잘 μˆ˜λ£Œν–ˆλ‹€κ³  μƒκ°ν•˜κ³  μžˆλŠ”λ°, 정말 잘 λ°°μ› λŠ”μ§€ 각 λ‹¨μ›λ³„λ‘œ μ •λ¦¬ν•˜κ³  λ³΅μŠ΅ν•  수 μžˆλ„λ‘ 문제λ₯Ό ν’€μ–΄λ³΄κ³ μž ν•œλ‹€. νŒŒμ΄μ¬μ„ 처음 ν•™μŠ΅ν•˜λŠ” 뢄듀도 ν•¨κ»˜ 문제λ₯Ό ν’€μ–΄λ³΄λŠ” 것은 μ–΄λ–¨κΉŒ?

1μž₯ μ™œ ν”„λ‘œκ·Έλž˜λ°μ„ λ°°μ›Œμ•Ό ν•˜λŠ”κ°€?

  • μ–΄λ €μš΄ 문제λ₯Ό ν•΄κ²°ν•˜λ €λŠ” 것, λ‹€λ₯Έ μ‚¬λžŒμ˜ 문제λ₯Ό ν•΄κ²°ν•΄μ£ΌλŠ” μž¬λ―ΈκΉŒμ§€ λ‹€μ–‘ν•œ μ΄μœ κ°€ μžˆλ‹€.

    λ‚˜λŠ” μž‘λ…„λ„ ν•˜λ°˜κΈ° λΆ€ν„° 'λ‚˜λŠ” μ™œ 이 μ§μ—…μœΌλ‘œ 일을 ν•˜λŠ”κ°€?' 깊이 κ³ λ―Όν–ˆλ‹€. κ³ λ―Ό 끝에 μƒˆλ‘œμš΄ μ§λ¬΄μ—μ„œ μΌν•˜κΈ°λ₯Ό ν¬λ§ν•˜λ©° 'ν”„λ‘œκ·Έλž˜λ°'에 도전을 ν•˜κ³ μžˆλ‹€. μ€€λΉ„ν•˜λŠ” κ°€μš΄λ° μ•žμœΌλ‘œ λ”μš±λ” λ§Žμ€ 문제λ₯Ό ν•΄κ²°ν•  수 μžˆμ„ κ²ƒμ΄λΌλŠ” κΈ°λŒ€κ°κ³Ό ν•¨κ»˜ 재미λ₯Ό 느끼고 μžˆλ‹€.

ν”„λ‘œκ·Έλž˜λ°

  • ν”„λ‘œκ·Έλž˜λ¨Έ: 자료λ₯Ό λΆ„μ„ν•˜κ³  문제λ₯Ό ν•΄κ²°ν•˜λ„λ‘, μ»΄ν“¨ν„°μ˜ μžμ›μ„ μ‚¬μš©ν•˜κ³  μ‘°μœ¨ν•˜κΈ° μœ„ν•΄ λͺ…령문을 κ³ μ•ˆν•˜κ³  μž‘μ„±ν•˜λŠ” μ‚¬λžŒ
  • 컴퓨터 μ–Έμ–΄
    • 기계어(machine-language): μ€‘μ•™μ²˜λ¦¬μž₯μΉ˜κ°€ μ΄ν•΄ν•˜λŠ” μ–Έμ–΄λ‘œ 0κ³Ό 1둜만 ν‘œν˜„ν•˜κΈ° λ•Œλ¬Έμ— μ‚¬λžŒμ΄ 읽고 μž‘μ„±ν•˜κΈ° μ–΄λ ΅λ‹€.
    • 인터프리터: ν”„λ‘œκ·Έλž˜λ¨Έκ°€ μ½”λ“œλ₯Ό μž‘μ„±ν•  λ•Œ μ†ŒμŠ€ μ½”λ“œλ₯Ό 읽고, μ†ŒμŠ€μ½”λ“œλ₯Ό νŒŒμ‹±ν•˜κ³ , μ¦‰μ„μ—μ„œ λͺ…령을 ν•΄μ„ν•œλ‹€.
    • 컴파일(compile): λ‚˜μ€‘μ— 싀행을 μœ„ν•΄μ„œ ν•˜μ΄λ ˆλ²¨ μ–Έμ–΄λ‘œ μž‘μ„±λœ ν”„λ‘œκ·Έλž¨μ„ 둜우레벨 μ–Έμ–΄λ‘œ λ²ˆμ—­ν•œλ‹€.

컴퓨터 ꡬ쑰: ν•˜λ“œμ›¨μ–΄ μ•„ν‚€ν…μ²˜

ν•˜λ“œμ›¨μ–΄ μ•„ν‚€ν…μ²˜

  • μ€‘μ•™μ²˜λ¦¬μž₯치(central processing unit, CPU): μ»΄ν“¨ν„°μ˜ μ½”μ–΄λ‘œ μž‘μ„±ν•œ ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•˜λŠ” μž₯치, "CPU" ν˜Ήμ€ ν”„λ‘œμ„Έμ„œλΌκ³  λΆ€λ₯Έλ‹€.
  • μž…μΆœλ ₯μž₯치(Input Output Devices): κ°„λ‹¨ν•˜κ²Œ ν™”λ©΄, ν‚€λ³΄λ“œ, 마우슀, 마 이크, μŠ€ν”Όμ»€, ν„°μΉ˜νŒ¨λ“œκ°€ ν¬ν•¨λœλ‹€. 컴퓨터와 μ‚¬λžŒμ΄ μƒν˜Έμž‘μš©ν•˜λŠ” λͺ¨λ“  방식이 ν¬ν•¨λœλ‹€.
  • μ£ΌκΈ°μ–΅μž₯치(main memory): ν”„λ‘œκ·Έλž¨κ³Ό 데이터λ₯Ό μ €μž₯ν•œλ‹€.μ „κΈ°κ°€ λ‚˜κ°€κ²Œ 되 λ©΄ μ£ΌκΈ°μ–΅μž₯μΉ˜μ— μ €μž₯된 μ •λ³΄λŠ” 사라진닀.
  • 보쑰 κΈ°μ–΅μž₯치(Secondary Memory): 정보λ₯Ό μ €μž₯ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ˜μ§€λ§Œ, μ£ΌκΈ°μ–΅μž₯μΉ˜λ³΄λ‹€ μ†λ„λŠ” λŠλ¦¬λ‹€.
  • λ§ˆλ”λ³΄λ“œ(λ©”μΈλ³΄λ“œ): 주회둜 기판, μ£Ό 기판, ν”Œλ ˆμ΄λ„ˆ λ³΄λ“œ λ˜λŠ” μ‹œμŠ€ν…œ λ³΄λ“œ λ“±μœΌλ‘œ 뢈라고 λ²”μš© 컴퓨터 λ˜λŠ” 기타 λ‹€λ₯Έ ν™•μž₯ κ°€λŠ₯ν•œ μ‹œμŠ€ν…œμ— μ“°μ΄λŠ” μ£ΌνšŒλ‘œκ°€ λ‚΄μž₯된 λ³΄λ“œμ΄λ‹€.

μ–Έμ–΄λ‘œμ¨ 파이썬

  • μ—λŸ¬
    • ꡬ문였λ₯˜(Syntax Error): 문법에 λ§žμ§€ μ•ŠλŠ”λ‹€λŠ” 것
    • 논리 였λ₯˜(Logic Error): 싀생 μˆœμ„œμ— μ‹€μˆ˜κ°€ μžˆκ±°λ‚˜ μ—°κ΄€ 방식에 였λ₯˜κ°€ μžˆλŠ” 것
    • 의미둠적 였λ₯˜(Semantic Error): ν”„λ‘œκ·Έλž¨μ€ μž‘λ™ν•˜λ‚˜, μ˜λ„ν•œ λ°”λ₯Ό μˆ˜ν–‰ν•˜μ§€ μ•ŠλŠ” 경우
  • μ˜ˆμ•½μ–΄: 파이썬 μžμ²΄μ—μ„œ λͺ…λ Ήμ–΄λ‘œ μ‚¬μš©λ˜λŠ” 이름(λ³€μˆ˜λͺ…μœΌλ‘œ μ‚¬μš© λΆˆκ°€)
as elif global or with
assert else if pass yield
break except import print 
class exec in raise 
continue finally is return 
def for lambda try
  • 순차문: μŠ€ν¬λ¦½νŠΈμ— μž‘μ„±λœ μˆœμ„œμ— 맞좰 ν•œμ€„ ν•œμ€„ μ‹€ν–‰λœλ‹€.
  • 쑰건문: 쑰건을 ν™•μΈν•˜κ³  λͺ…령문을 μ‹€ν–‰ν•˜κ±°λ‚˜ κ±΄λ„ˆλ›΄λ‹€.
  • 반볡문: 반볡적으둜 λͺ…령문을 μ‹€ν–‰ν•œλ‹€. λŒ€μ²΄λ‘œ 반볡 μ‹€ν–‰μ‹œ λ³€ν™”λ₯Ό 수반 ν•œλ‹€.

첫 κ°•μ˜λŠ” 문제둜 정리할 뢀뢄은 μ—†μ–΄ μƒλž΅ν•˜κ³  2κ°•μ—μ„œ ν”„λ‘œκ·Έλž˜λ°μ„ ν†΅ν•΄μ„œ 문제λ₯Ό ν•΄κ²°ν•΄ 보자.

0개의 λŒ“κΈ€