본문 바로가기
컴퓨터/Python

[파이썬] 파이썬 에러 SyntaxError: Missing parentheses in call to 'print'

by HanJoohyun 2017. 11. 1.
반응형


 

 

안녕하세요 한주현입니다.

 

오늘은 파이썬2에서는 잘 실행 되는데 파이썬3에서 실행하면 발생하는 오류 중 하나인,

 

SyntaxError: Missing parentheses in call to 'print'

 

에 대하여 알아보겠습니다.

 

 

 

 문제 상황

 

 SyntaxError: Missing parentheses in call to 'print'


파이썬3가 나오고 파이썬2는 legacy(유물)로 말씀하시는 귀도 선생님의 말씀을 새겨 듣고


파이썬3으로 옮겨 오기 위해 파이썬3을 설치 및 기존 코드를 실행해보니


아래와 같은 오류 발생 ㅋㅋ


1
2
3
4
5
$ python3 helloworld2.py
  File "helloworld2.py", line 1
    print "hello world"
                      ^
SyntaxError: Missing parentheses in call to 'print'
cs


왜 오류가 났을까요?


 



 해결 방법


1
print "hello world"
cs


원인은 print 에 있습니다.


먼저 SyntaxError: Missing parentheses in call to 'print' 의 의미부터 살펴보죠. 


문법적으로 오류가 났는데 parentheses (괄호) 가 print를 호출하는데 빠졌다고 쓰여있습니다.


1
print("hello world")
cs


print 에 괄호가 빠져있다고 하니 이렇게 괄호를 넣어주시면 해결됩니다.


괄호를 넣어주는 이유는

python2print 문python3가 되면서 print 함수가 되었기 때문입니다.

함수에는 인자를 전달할 수 있는데, 함수에 전달되는 인자는 함수(인자1, 인자2) 와 같은 형태이지요.


정확히 말씀드리자면 python3의 print 함수는 아래와 같습니다.

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)


python3 부터 바뀌는 내용들을 귀도 반 로썸 선생님께서 다음 링크에 작성해주셨습니다 ㅎㅎ

https://docs.python.org/3/whatsnew/3.0.html


다음 링크는 python3의 print 함수에 대한 내용입니다.

https://docs.python.org/3/library/functions.html#print



여러분들께 도움이 되셨으면 좋겠네요


그럼 다음 시간에 만나요!

 

 

 


반응형

댓글