파이썬에서 세미클론을 쓸까 말까
다른 언어에서의 세미클론
다른 언어에서 ;
는 statement
를 구분하는 역할을 해요. 비교적 과거에 만들어진 언어는 ;
를 생략할 수 없지만, 비교적 최근에 만들어진 언어들은 생략해도 작동하곤 해요.
자바스크립트
처럼 엔터를 잘 쳤다면 ;
를 생략해도 웬만해서는 작동하는 언어도 있는데, 모든 경우에서 생략해도 되는 것은 아니에요.
루아
라는 언어는 엔터도 안치고 ;
도 안써도 되는 요상한 언어에요. 일단 index
도 1부터 시작하는게 아주 이상함.
아무튼 파이썬이 아닌 다른 대부분의 언어에서는 ;
를 생략하는 것을 권장하지 않아요.
파이썬에서의 세미클론
파이썬에서 ;
는 statement
를 구분하는 역할을 하지 않아요. 한 줄에 여러 statement
를 적었을 때, statement
를 구분하는 역할을 해요.
print('1'); print('2') # 두 statement 구분
사실 무슨 차이인지 모르겠고 그냥 말장난같긴 해요.
이것저것 찾아보니
print('1') # statement가 한 개
print('1'); # statement가 두 개, 오른쪽에 있는건 비어 있는 statement
라고 해요.
1
: 자바스크립트에서 쓰인;
는statement
가 끝났음을 의미2
: 세미클론의 왼쪽은Hello World
를 출력하는statement
3
: 세미클론의 오른쪽은 아무것도 없는statement
따라서, 오히려 파이썬에서는 ;
를 생략하는 것을 권장해요. ;
를 적는건 아무것도 없는 빈 statement
가 추가되기 때문이지요.
주피터 노트북
등에서도 뒤에다가 ;
를 붙이면 평소라면 나오던 결과물 같은 것이 나오지 않는다는 말이 있지만, 전 주피터를 사용하지 않아서 확인해보진 않았어요.
다만, 파이썬 콘솔에서는 ;
를 붙인다고 해서 출력 부분에서 무언가가 바뀌지는 않더라구요.