godkw   2년 전

계속 런타임 에러가 떠서 어떤 부분이 잘 못 되었는지 하나하나씩 바꿔가면서 맞춰갔습니다.

4,5라인을 그대로 하면 런타임 에러가 뜨는 것을 확인했고, 4,5라인을 합친 결과(주석처리 된 코드)를 실행하면 문제없이 실행되었습니다.

혹시 4,5라인을 따로 두는 것과 합친 것의 차이를 알 수 있을까요? 

왜 오류가 뜨는지 알고 싶습니다.

lcr7324   2년 전

줄 번호는 올리신 코드 기준으로 하겠습니다.

7번 줄이 실행되면서 파이썬 내장 함수 sum이 변수 sum으로 덮어씌워집니다.

for문이 실행되면서 다시 7번 줄이 실행되면 sum(score[1:])의 리턴 값을 구해야 하는데 sum은 이제 함수가 아니라 변수이므로 호출이 되지 않고, 런타임 에러가 발생합니다.

7번 줄이 없어지고 9번 줄을 주석 처리한 부분과 같이 수정하면 sum이라는 이름의 변수가 생기지 않으므로 런타임 에러가 발생하지 않습니다.

변수명을 지을 때 내장 함수와 이름이 겹치지 않게 조심하세요.

314programs   2년 전

파이썬은 인댄태이션이 중요해요.

인댄태이션이 없어서, 애러가나네요.

그리고, function인 sum을 variable로쓰면, 그것도 애러가날수있어요.

djm03178   2년 전

들여쓰기가 깨진 건 코드를 본문에 올렸다가 도로 복사해서 그렇습니다. 코드 올리는 칸에 한 번에 올려주셔야 됩니다.

댓글을 작성하려면 로그인해야 합니다.