Python

[Python error] SyntaxError: EOL while scanning string literal

코딩도어 2022. 2. 5. 22:42

오늘은 파이썬 에러에 대해 말씀드리려고 합니다.

SyntaxError: EOL while scanning string literal라는 에러인데요.

 

처음 파이썬에 대해 배울 때 자주 나오고 현재도 간혹 나오는 에러인데요. 사실 이 에러는 정말 간단한 문제를 가지고 있습니다. 하지만 간단한 에러가 쌓이면 곧 시간이 지나죠.. (time is gold)

 

바로 오타에 대한 문제인데요. 무조건 오타라고 뜨는 에러가 아닙니다. 따옴표와 관련된 에러 발생입니다.

그럼 같이 보러 가실까요?

 

제가 수학 점수와 영어 점수를 기입할 수 있는 코드를 짠다고 생각하면

 

Score = [
	{"math":"","english":""}
]

math = input("math score : )	## 따옴표가 닫혀있지 않습니다.
english = input("english score :")

 

이런 식으로 짤 수 있겠죠? 그런데 실행해보니

 

문자열을 인식하지 못하는 에러가 생겼습니다. 왜일까요?

바로 단순 오타인데요.

 

코드에서 따옴표를 사용하였을 때는 따옴표를 닫아주어야 에러가 생기지 않습니다. 또한 잘못된 위치에 따옴표가 있다면 에러가 생깁니다. 그렇다면

Score = [
	{"math":"","english":""}
]

math = input("math score : ")		## 따옴표를 닫았습니다.
english = input("english score :")

이렇게 잘 구동되는 것을 볼 수 있습니다. 여러분도 이러한 에러가 생기면 따옴표를 확인 해보세요. 그나마 단순 오타라 에러 메시지가 잘 알려줄 거예요. 그럼 다른 예시도 보겠습니다. 

 

 

위의 예제에서 등록한 수학과 영어 점수에 대해 "수학 점수는 ~입니다"라는 문자열을 print() 하겠습니다.

 

math = '100'
english = '100'

print("수학 점수는 %s 입니다" % math)
print("영어 점수는 %s 입니다"" % english)

여러분도 한 번 찾아보세요~

답은~

 


 

math = '100'
english = '100'

print("수학 점수는 %s 입니다" % math)
print("영어 점수는 %s 입니다" % english)		## 따옴표가 잘못 되어있죠?

네 맞습니다. 5번 줄이 에러의 원인이었네요.

 

 

이렇듯 따옴표도 잘 신경써서 코딩해주셔야 합니다. 저도 왕초보라 에러에서 막힐 때가 많거든요. 그럴 때마다 구글링을 해보는 경우가 대부분이지만 이렇게 기술 블로그로 정리하면서 저만의 데이터를 쌓고 있습니다. 많은 분들에게 도움이 되셨으면 좋겠다는 마음으로 정리했습니다~!

 

 

 

그럼 오늘도 행복한 하루 되세요.