네이버 부스트코스 <인공지능 기초 다지기> 강의를 참고하여 작성하였습니다.
프로그램을 사용할 때 일어나는 예상치 못한 오류들을 "Exception, 예외"라고 한다.
프로그램은 제품이기 때문에, 모든 잘못된 상황에 대처가 필요하다.
=> Exception Handling
try:
예외 발생 가능 코드
except <Exception Type>:
예외 발생 시 대응 코드
if문이랑 비슷하다. 파이썬에서는 if문보다 exception 구문을 권장하는 경우가 있다.
0으로 숫자를 나눌 때 예외처리
for i in range (10):#0~9
try:
print(10/i)
except ZeroDivisionError:
print("Not divided by 0")
//
Not divided by 0
10.0
5.0
3.3333333333333335
2.5
2.0
1.6666666666666667
1.4285714285714286
1.25
1.1111111111111112
IndexError: List의 Index 범위를 넘어갈 때
NameError: 존재하지 않은 변수 호출
ZeroDivisionError: 0으로 숫자 나눔
ValueError: 변환할 수 없는 문자/숫자 변환
FileNotFoundError: 존재하지 않는 파일 호출

=> Exception이 전체 에러를 잡는 경우지만, 에러가 어디서 났는지 명확하지 않아서 좋은 코드가 아님
raise < Exception Type >(예외정보)

=> 과감하게 프로그램 종료시켜서 뒤 과정에서 의미 없는 결과를 내지 않게 방지!
assert (예외조건)
: 특정 조건에 만족하지 않을 경우 예외 발생
def get_binary_nmubmer(decimal_number):
assert isinstance(decimal_number, int)
return bin(decimal_number)
print(get_binary_nmubmer(10))
//0b1010

: OS에서 파일을 저장하는 트리 구조 저장 체계
: 컴퓨터 등의 기기에서 의미있는 정보를 담는 논리적인 단위
f = open(<"파일이름">, "접근 모드")
f.close()
r = 읽기 모드 - 파일을 읽기만 할 때
w = 쓰기 모드 - 파일에 내용을 쓸 때
a = 추가 모드 - 파일의 마지막에 새로운 내용을 추가 시킬 때
read() txt 파일 안에 있는 내용을 문자열로 반환
f = open("~.txt","r")
with 구문과 함께 사용
with open("~.txt","r") as f:
contents = f.read()
한 줄씩 읽어 List Type으로 반환
with open("~.txt","r") as my_file:
content_list = my_file.readlines()
실행 시 마다 한 줄씩 읽어 오기
with open("~.txt","r") as my_file:
i = 0
while True:
line = my_file.readline()
if not line:
break
print(str(i) + "===" + line.replace("\n",""))
#한줄씩 값 출력
i = i+1
단어 통계정보 산출
with open("~.txt","r") as my_file:
contents = my_file.read()
word_list = contents.split(" ")#빈칸기준