πŸ“š μŠ€ν„°λ””/파이썬 μŠ€ν„°λ”” κ°•μ˜μžλ£Œ

[2νŒ€/κΉ€μ„Έμ—°] 10μ£Όμ°¨ 파이썬 μŠ€ν„°λ”” - μ˜ˆμ™Έμ²˜λ¦¬

μ•Œ 수 μ—†λŠ” μ‚¬μš©μž 2023. 5. 31. 13:39

μ˜ˆμ™Έμ²˜λ¦¬

:ν”„λ‘œκ·Έλž¨μ„ κ°œλ°œν•˜λ©΄μ„œ μ˜ˆμƒν•˜μ§€ λͺ»ν•œ 상황이 λ°œμƒ

 

ex) μ‚¬μš©μžμ˜ μž…λ ₯ 였λ₯˜

μ‚¬μ΄νŠΈμ— κ°€μž…ν•˜μ—¬ 아이디λ₯Ό 생성 > μ•„μ΄λ””λŠ” μ˜λ¬Έμžλ‚˜ 숫자λ₯Ό μ§€μ›ν•˜μ§€λ§Œ μ‚¬μš©μžκ°€ ν•œκΈ€ μž…λ ₯을 μ‹œλ„ν•¨ > μž…λ ₯된 ν•œκΈ€μ΄ 문제 없이 λ°μ΄ν„°λ² μ΄μŠ€μ— μ €μž₯ > 자칫 μ‚¬μš©μžκ°€ ν•΄λ‹Ή μ›Ή μ‚¬μ΄νŠΈμ— λ‘œκ·ΈμΈν•˜μ§€ λͺ»ν•¨

 

ex) MSμ˜€ν”ΌμŠ€μ˜ μžλ™μ €μž₯

 

- μ˜ˆμ™Έμ²˜λ¦¬

:예츑 κ°€λŠ₯ν•œ μ˜ˆμ™Έμ™€ 예츑 λΆˆκ°€λŠ₯ν•œ μ˜ˆμ™Έ

  • μ˜ˆμΈ‘κ°€λŠ₯ν•œμ˜ˆμ™Έ

:ν…μŠ€νŠΈ λ°•μŠ€μ— μ‹€μˆ˜λ‘œ 잘λͺ»λœ 값을 μž…λ ₯ν•œ 경우

:μ‹€μ œλ‘œ μ‘΄μž¬ν•˜μ§€ μ•ŠλŠ” νŒŒμΌμ— μ €μž₯ν•  것 같은 경우

κ°œλ°œμžλŠ” 사전에 μ˜ˆμΈ‘ν•  수 μžˆλŠ” κ²ƒμœΌλ‘œ μ–Όλ§ˆλ“ μ§€ μ˜ˆμ™Έμ²˜λ¦¬κ°€ κ°€λŠ₯함 (μž…λ ₯값을 잘λͺ» μž…λ ₯ν•˜λ©΄, if문을 μ‚¬μš©ν•˜μ—¬ 잘λͺ» μž…λ ₯ν–ˆλ‹€κ³  응닡함)

  • 예츑 λΆˆκ°€λŠ₯ν•œ μ˜ˆμ™Έ

:맀우 λ§Žμ€ νŒŒμΌμ„ μ²˜λ¦¬ν•  λ•Œ λ¬Έμ œλ°œμƒ

: 파일 μ•ˆμ— λ‚΄μš©μ΄ μ—†λŠ”λ° μ²˜λ¦¬ν•˜μ§€ λͺ»ν•¨, νŒŒμΌμ„ 읽고 μžˆλŠ”λ° λ‹€λ₯Έ μ‚¬μš©μžμ— μ˜ν•΄ μ‚­μ œλ¨

인터프리터가 μžλ™μœΌλ‘œ 이것이 μ˜ˆμ™ΈλΌκ³  μ‚¬μš©μžμ—κ²Œ μ•Œλ €μ€Œ

λŒ€λΆ€λΆ„μ€ μ΄λŸ¬ν•œ μ˜ˆμ™Έκ°€ λ°œμƒν•˜λ©΄μ„œ ν”„λ‘œκ·Έλž¨μ΄ μ’…λ£Œλ˜λ―€λ‘œ μ μ ˆν•œ 쑰치λ₯Ό ν•΄μ•Ό 함

μ œν’ˆμ˜ 완성도λ₯Ό λ†’μ΄λŠ” μ°¨μ›μ—μ„œ 맀우 μ€‘μš”ν•¨

 

-μ˜ˆμ™Έ 처리 ꡬ문
1) try-except문

2) try-except-else문

: if-elseλ¬Έκ³Ό λΉ„μŠ·ν•œλ°, ν•΄λ‹Ή μ˜ˆμ™Έκ°€ λ°œμƒν•˜μ§€ μ•ŠλŠ” 경우 μˆ˜ν–‰ν•  μ½”λ“œλ₯Ό else문에 μž‘μ„±ν•˜λ©΄ 됨

 

μ—λŸ¬κ°€ λ°œμƒν•˜μ§€ μ•ŠλŠ” 경우 μˆ˜ν–‰λ¬Έμ„ μ •μ˜ν•˜λ©΄ μ—λŸ¬κ°€ λ°œμƒν•˜μ§€ μ•ŠλŠ” κ²½μš°μ—λ„ 일어날 일을 μ‚¬μš©μžκ°€ μ •ν™•νžˆ 예츑 κ°€λŠ₯ > 많이 μ‚¬μš©ν•˜μ§€λŠ” μ•ŠμŒ

 

3) try-except-finally문

:try-exceptλ¬Έ μ•ˆμ— μžˆλŠ” μˆ˜ν–‰ μ½”λ“œκ°€ μ•„λ¬΄λŸ° 문제 없이 μ’…λ£Œλ˜μ—ˆμ„ 경우 μ΅œμ’…μœΌλ‘œ ν˜ΈμΆœν•˜λŠ” μ½”λ“œ

4) raise문

:try—exceptλ¬Έκ³Ό 달리 ν•„μš”ν•  λ•Œ μ˜ˆμ™Έλ₯Ό λ°œμƒμ‹œν‚€λŠ” μ½”λ“œ

κ°•μ œλ‘œ ν”„λ‘œκ·Έλž¨μ΄ μ’…λ£Œλ˜λ„λ‘ μ˜ˆμ™Έλ₯Ό λ°œμƒμ‹œν‚€λŠ” 것

 

while True문이 반λͺ©λ¬Έμ΄ 계속 λŒμ•„κ°€λŠ” μƒνƒœμ—μ„œ μ‚¬μš©μžμ—κ²Œ μž…λ ₯ λ°›μŒ

μˆ«μžκ°€ μ•„λ‹Œ 문자λ₯Ό μž…λ ₯ν•œ 경우, ValueError λ°œμƒν•¨

 

5) assert문

:미리 μ•Œμ•„μ•Ό ν•  μ˜ˆμ™Έ 쑰건을 λ§Œμ‘±ν•˜μ§€ μ•Šμ€ 경우 μ˜ˆμ™Έλ₯Ό λ°œμƒ

:assertλŠ” κ°„λ‹¨ν•˜κ²Œ μ˜ˆμ™Έ λ°œμƒ κ°€λŠ₯, True와 False의 λ°˜ν™˜μ΄ κ°€λŠ₯ν•œ ν•¨μˆ˜ μ‚¬μš©

-파일 닀루기

 

:파일의 κ°œλ…

:컴퓨터λ₯Ό μ‹€ν–‰ν•  λ•Œ κ°€μž₯ 기본이 λ˜λŠ” λ‹¨μœ„

μ•„μ΄μ½˜ λ”λΈ”ν΄λ¦­ν•˜μ—¬ ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•˜λŠ” κ²ƒμ²˜λŸΌ λ³΄μ΄μ§€λ§Œ μ‹€μ œλ‘œλŠ” μ•„μ΄μ½˜κ³Ό μ—°κ²°λœ 파일이 μ‹€ν–‰λ˜λŠ” κ΅¬μ‘°μž„

μ‚¬μš©μžκ°€ νŽΈν•˜κ²Œ μ“°κΈ° μœ„ν•΄ κ°„λ‹¨ν•œ μ•„μ΄μ½˜μ„ λ§Œλ“€μ–΄ μ‚¬μš©ν•  뿐, κ·Έ μ΄λ©΄μ—λŠ” λͺ¨λ‘ 파일이 μˆ¨μ–΄ 있음(온리 경둜)

cf. 파일과 디렉토리

:기본적으둜 파일 μ‹œμŠ€ν…œμ€ 파일과 λ””λ ‰ν„°λ¦¬λ‘œ κ΅¬λΆ„ν•˜λŠ”λ°,

μœˆλ„μ—μ„œλŠ” λ””λ ‰ν„°λ¦¬λΌλŠ” μš©μ–΄ λŒ€μ‹  ν΄λ”λΌλŠ” μš©μ–΄λ₯Ό μ‚¬μš©ν•¨

:λ””λ ‰ν„°λ¦¬λŠ” νŒŒμΌμ„ λ‹΄λŠ” 또 ν•˜λ‚˜μ˜ 파일둜, μ—¬λŸ¬ νŒŒμΌμ„ 포함할 수 μžˆλŠ” κ·Έλ¦‡μž„

:νŒŒμΌμ€ μ»΄ν“¨ν„°μ—μ„œ λ…Όλ¦¬μ μœΌλ‘œ 정보λ₯Ό μ €μž₯ν•˜λŠ” κ°€μž₯ μž‘μ€ λ‹¨μœ„

파일과 λ””λ ‰ν„°λ¦¬λŠ” 트리ꡬ쑰둜 ν‘œν˜„λ¨, μ„œλ‘œ 포함 괸계