###단축키
SyntaxError | 뭔가 파이썬이 해석못하게 되있다는뜻 | |
IdexError | 범위가 넘어간 경우 | |
if 제어 : | ||
isdigit() | 숫자일 경우 True | |
try 제어 : | 되나안되나 검사 | |
except : | 예외처리 | 안되면 실행 |
else : | 예외발생하지 않았을떄 | 잘되면 실행 |
finally : | 예외발생과 상관없이 실행 | 언제나 끝나고 실행 |
except Exception as ex: | 거의 마즈막에씀 | 예외객체 오류 에 대한 정보를 알려줌 |
except ValueError as ve: | 숫자에러있을때 | 값이 숫자아니면 에러 |
except ZeroDivisionError as ze: | 분모에러있을때 | 분모가 0일때 에러 |
raise 에러코드 | 강제 에러 만들기 |
### isdigit()
width=input()
height =input()
area = 0
if width.isdigit() and height. isdigit():
area = int(width) * int(height)
print("{0} x {1} = {2}".format(width, height, area))
else:
print("숫자가 아닌 값이 입력 되었습니다.")
### try
width=input()
height =input()
area = 0
try :
area = int(width) * int(height)
print("{0} x {1} = {2}".format(width, height, area))
except:
print("숫자가 아닌 값이 입력 되었습니다.")
### else
width=input()
height =input()
area = 0
try :
area = int(width) * int(height)
except:
print("숫자가 아닌 값이 입력 되었습니다.")
else:
print("{0} x {1} = {2}".format(width, height, area))
### finally
width=input()
height =input()
area = 0
try :
area = int(width) * int(height)
except:
print("숫자가 아닌 값이 입력 되었습니다.")
else:
print("{0} x {1} = {2}".format(width, height, area))
finally:
print("finally 코드 블록은 예외 발생 여부에 상관 없이 실행됩니다.")
### except Exception as ex
width=input()
height =input()
area = 0
try :
area = int(width) * int(height)
except Exception as ex:
print("{0}: {1}".format(type(ex), ex)))
else:
print("{0} x {1} = {2}".format(width, height, area))
finally:
print("finally 코드 블록은 예외 발생 여부에 상관 없이 실행됩니다.")
###raise
def calc_area(w, h):
if w.isdigit() and h.isdigit():
resturn int(w) * int(h)
else:
raise ValueError("숫자가아닌값이 입력되었습니다.")
print("사각형의 면적을 구해봅시다.")
width = input("폭을 입력하세요: 0")
height = input("높이를 입력하세요: ")
try:
area = clac_area(width, height)
expect ValueError as ve:
print("{0}: {1}".format(type(ve), ve))
expect Exception as ex:
print("{0}: {1}".format(type(ex), ex))
else:
print("{0} x {1} = {2}".format(width, height, area))
###연습
def input_index():
num =0
try:
num = int(input("인덱스로 사용할 숫자를 입력하세요: "))
except ValueError as exception
raise exception
else:
return num
def print_in_bounds(list, index):
value - 0
try:
value = list[index]
except:
print("{0} {1}".format(type(exception),exception)
index = len(list) -1
print("인덱스는 0 ~ {0}까지 사용할 수 있습니다."format(index))
value = list[index]
finally:
print("[{0}]: {1}".format(data_list))
data_list = list(range(1, 11))
print("data_list: {0}".format(data_list))
try:
num = input_index()
print("[{0}]: {1}".format(num1, data_list[num1]))
except IndexError as exception:
print(exception)
except ValueError as exeption:
print("{0} {1}".format(type(exception),exception))
except Exception as exception:
print(exception)
'+++++SW 일일 공부+++++ > SW Expert Aademy' 카테고리의 다른 글
리스트 조작법 (0) | 2020.01.24 |
---|---|
Python 표준 모듈과 활용 (0) | 2020.01.14 |
가변함수에 대하여 (0) | 2020.01.11 |
실행 관련 함수 (0) | 2020.01.11 |
Python 변환함수 (0) | 2020.01.11 |