[혼공학습단] 5주차 혼공파 파이썬 기본 미션

김수연·2022년 8월 14일
0

혼공학습단 8기

목록 보기
5/7
post-thumbnail

🎉4주차 MISSION CLEAR!!

4주차 미션을 완료하고 야무지게 혼공학습단의 방학을 즐기고 왔댜!
이제 마무리를 향해 달려!!🏃‍♀️🏃‍♂️

5주차(8/8 - 8/14)

📕 기본미션: p.293 3번 문제 풀고 인증샷

  1. 다음 중 구문 오류 발생이 예상되면 '구문 오류'에, 예외 발생이 예상되면 '예외'에 체크 표시를 한 후, 예상되는 에러명도 적어 보세요.
output = 10 + "개"    #1
int("안녕하세요")      #2
cursor.close)        #3
[1, 2, 3, 4, 5][10]  #4

#1 예외: ValueError
#2 예외: ValueError
#3 구문 오류: SyntaxError
#4 예외: IndexError


📗 선택 미션: 구문 오류와 예외의 차이 설명하기(p.291 1번 문제)

  1. 구문 오류(Syntax Error)와 예외(Exception)의 차이를 설명해 보세요.
  • 프로그래밍 언어의 오류(Error)

    1) 프로그램 실행 전에 발생하는 오류 ⇨ 구문 오류(syntax error)
    2) 프로그램 실행 후에 발생하는 오류 ⇨ 런타임 오류(runtime error)

🙅‍♀️ 구문 오류

  • 구문 오류는 괄호의 개수, 들여쓰기 문제 등으로 발생
  • 구문 오류는 해결하지 않으면 프로그램이 실행되지 않음
<구문 오류가 발생하는 코드>
# 프로그램 시작
print("# 프로그램이 시작되었습니다!")

# 구문 오류 발생 코드
print("# 예외를 강제로 발생시켜 볼게요!) 

⇨ 코드 실행 시 SyntaxError: EOL while scanning string literal

위의 코드를 실행하면 왜 저런 오류가 날까?
.
.
.
바로 구문 오류 발생 코드에서 닫는 따옴표로 문자열 닫지 않았기 때문이다.

💥 이때 SyntaxError: EOL while scanning string literal 라는 오류 문구와 함께 오류가 나게되는데 이 뜻을 알아보자
string 문자를 스캔하는데 EOL(End Of Line) 문제가 있다고 나오는데 그보다 앞에 있는
SyntaxError는 구문에 문제가 있어 프로그램이 실행조차 되지 않는 오류다.

👩‍🔧 구문 오류 해결

<구문 오류 해결>
# 프로그램 시작
print("# 프로그램이 시작되었습니다!")

# 구문 오류 발생 코드
print("# 예외를 강제로 발생시켜 볼게요!") #닫는 따옴표로 문자열 닫아 해결

🙅‍♂️ 예외/런타임 오류

# 프로그램 시작
print("# 프로그램이 시작되었습니다!")

# 예외 발생 코드
list_a[1]

⇨ 코드 실행 시 
# 프로그램이 시작되었습니다!
Traceback (most recent call last):
	File "test.py", line 5, in <module>
    	list_a[1]
NameError: name 'list_a' is not defined

위의 코드를 실행하면 왜 저런 오류가 날까?
.
.
.
코드를 작성한 파일 test.py에서 5번째 줄인 list_a[1]이 문제라는 것을 보여주고 있다.

💥 NameError: name 'list_a' is not definedlist_a라는 이름을 가진 것이 정의 되지 않았다는 의미이다. 해결하려면?
list_a라는 이름을 가진 것을 만들어 주면 된다! 간단하쥬~

👨‍🔧 예외 오류 해결

<예외 해결>
# 프로그램 시작
print("# 프로그램이 시작되었습니다!")

# 예외 발생 코드 해결
list_a = [1, 2, 3, 4, 5] #list_a를 정의해줌
list_a[1]
profile
Quien no arriesga, no gana nada

0개의 댓글