728x90
반응형
초보자를 위한 파이썬(Python) 300제 풀이
296. 문자열 PER (Price to Earning Ratio) 값을 실수로 변환할 때 에러가 발생합니다. 예외처리를 통해 에러가 발생하는 PER은 0으로 출력하세요.
per = ["10.31", "", "8.00"]
for i in per:
print(float(i))
per = ["10.31", "", "8.00"]
for i in per:
try:
print(float(i))
except:
print(0)
- try, except 구문은 에러가 발생했을 때 대신 반환해주는 함수입니다.
- 에러가 발생했을 때, except 구문에 원하는 값을 지정해주면 됩니다.
297. 문자열로 표현된 PER 값을 실수로 변환한 후 이를 새로운 리스트에 저장해보세요.
per = ["10.31", "", "8.00"]
for i in per:
print(float(i))
per = ["10.31", "", "8.00"]
new_per = []
for i in per:
try:
v = float(i)
except:
v = 0
new_per.append(v)
print(new_per)
- 이전 문제의 정답과 거의 비슷하지만, for문의 변수를 따로 할당하여 새 리스트인 new_per에 append 해주는 방법입니다.
298. 어떤 값을 0으로 나누면 ZeroDivisionError 에러가 발생합니다. try ~ except로 모든 에러에 대해 예외처리하지 말고 ZeroDivisionError 에러만 예외처리해보세요.
try:
b = 3 / 0
except ZeroDivisionError:
print("0으로 나누면 안되요")
- except 옆에 에러 문구를 작성하면 그에 해당하는 에러만 예외처리를 합니다.
- 다른 에러 경우에도 에러 문구만 수정해주시면 가능합니다.
299. 다음과 같은 코드 구조를 사용하면 예외 발생 시 에러 메시지를 변수로 바인딩할 수 있습니다. 리스트의 인덱싱에 대해 에러를 출력해보세요.
try:
실행코드
except 예외 as 변수:
예외처리코드
data = [1, 2, 3]
for i in range(5)
print(data[i])
data = [1, 2, 3]
for i in range(5):
try:
print(data[i])
except IndexError as e:
print(e)
- 에러 변수를 다른 병수에 바인딩 할 수 있습니다.
300. 파이썬 예외처리는 다음과 같은 구조를 가질 수 있습니다. 아래의 코드에 대해서 예외처리를 사용하고 try, except, else, finally에 적당한 코드를 작성해봅시다. else와 finally는 적당한 문구를 print하시면 됩니다.
try:
실행 코드
except:
예외가 발생했을 때 수행할 코드
else:
예외가 발생하지 않았을 때 수행할 코드
finally:
예외 발생 여부와 상관없이 항상 수행할 코드
per = ["10.31", "", "8.00"]
for i in per:
print(float(per))
per = ["10.31", "", "8.00"]
for i in per:
try:
print(float(i))
except:
print(0)
else:
print("clean data")
finally:
print("변환 완료")
- 위 try 코드 예시를 참고하여 코드를 이해할 수 있습니다.
초보자를 위한 파이썬 300제 풀이 끝
출처 = https://wikidocs.net/book/922, 초보자를 위한 파이썬 300제,
PyCharm 사용
728x90
반응형
'개발 > (1) 초위파(Python) 300제 풀이' 카테고리의 다른 글
초보자를 위한 파이썬(Python) 300제 풀이 (291, 292, 293, 294, 295) (0) | 2022.12.30 |
---|---|
초보자를 위한 파이썬(Python) 300제 풀이 (286, 287, 288, 289, 290) (0) | 2022.12.25 |
초보자를 위한 파이썬(Python) 300제 풀이 (281, 282, 283, 284, 285) (0) | 2022.12.24 |
초보자를 위한 파이썬(Python) 300제 풀이 (276, 277, 278, 279, 280) (1) | 2022.12.23 |
초보자를 위한 파이썬(Python) 300제 풀이 (271, 272, 273, 274, 275) (0) | 2022.12.22 |