오류 통과시키기

gyeorrr·2023년 4월 18일
0

문제

주어지는 문자형에서 숫자를 추출해서 더하라

오류통과 없이 풀어보기
string = "aAb1B2cC34oOp"
numlist = ['1','2','3','4','5','6','7','8','9','0']
cnt = []

for i in string:
	for j in numlist		#for문은 뒤에오는j부터 값이 바뀌므로 numlist를 j로 만듬
    	cnt += int(i)
print(cnt)

>>>10

단점

  • numlist의 값이 많을시에는 하나씩 다 입력해야하고 번거로움
  • 반복문으로 다 확인해봐야하므로, 많은시간소요 됨

오류통과시키기

string = "aAb1B2cC34oOp"
answer = 0
for i in string:
	try:
    	answer += int(i)
	except:
    	pass
print(answer)

>>>10

try 실행할 코드
except 오류가 발생했을 때 처리할 코드

answer += int(i)에서 오류가 발생한다
왜냐하면 string 변수는 정수만 있는 게 아닌 알파뱃도 섞여 있기 때문에 파이썬에서는 알파뱃을 int로 변환시키지를 못한다
str정수는 int정수로 변환가능

이외에 방법으로 import re 가 있으나, 필자는 아직 감을 못 잡았다.

0개의 댓글