파이썬의 예약어란 무엇인가? 영어로 Reserved words 혹은 keyword 라고 한다. 여러분이 파이썬셸을 열었을 때 이미 사용할 수 있는 단어이고 명령어이다. 예약어란 말은 컴파일러에 의하여 먼저 예약이 되있다는 말이며, 사용자가 클래스,함수,변수 등의 이름으로 사용할 수 없다는 뜻이다.

 

파이썬셸
python shell

 

예약된 단어니까 Reserved words 이고, 열쇠같이 중요한 단어니까 keywords 다. 합쳐서 Reserved keywords 라고도 한다. 무미건조한 프로그래밍 언어의 문법에서 keyword 라고 직설적으로 이름을 붙였으니 중요한 단어들이다. 파이썬의 키워드는 아래와 같다.

 

1) 파이썬 예약어

and del global nonlocal while
as elif if not with
assert else import or yield
break except in pass False
class finally is raise True
continue for lambda return
def from None try

3.7 버전에 33개의 예약어가 있다. 이 단어들은 사용자가 자신이 정의하는 식별자로 사용할 수 없다.

 

*식별자(Identifier)

 

사용자가 정의하는 변수,상수,클래스,메소드 등을 말한다. 파이썬 컴파일러가 이 변수가 무엇인지 식별하기 위해서 단어를 읽어야 한다. 그런데 예약어를 식별자로 사용한다고 해보자.

 

a = 100 #a에 100을 할당한다. 식별자 a를 사용가능하다.

for = 200 # while에 200을 할당한다. 

#컴파일러는 for를 읽는 순간 반복문의 문법으로 판단한다.
#따라서 문법이 맞지 않으니 컴파일오류가 발생한다. 

사용자 관점에서 for 도 사용할 수 있는 것 아닌가? 반문할 수 있다. 그러나 컴파일러 관점에서 보면 for를 읽었을 때 반복문을 실행하는 것으로 인식한다.

 

굳이 for라는 단어를 사용하고 싶다면 다음과 같이 사용하면 된다.

 

For = 200
fOr = 200
foR = 200
FoR = 200
FOR = 200

 

파이썬은 대소문자를 구분하므로 대소문자로 식별자를 변경하면 된다. 그러나 그다지 권장하지 않는 방법이다. 코드상에서는 차이를 알 수 있지만, 발음으로 구분이 안되기 때문에 구두상 커뮤니케이션에 불리하다. 서면상에서 구분이 가지만 구두상(전화상)으로 차이를 알 수 없다.

 

dir-명령어
dir 명령어

 

dir( ) 명령어로 현재 경로의 식별자를 확인할 수 있다. 대소문자가 다르면 등록된 단어가 다르다. 이것을 case sensitive 라고 한다. (대소문자에 민감하다)

 

*요약 : 파이썬의 예약어들은 사용자가 선언하는 변수나 상수 그리고 다른 식별자(클래스,메소드 등)으로 사용할 수 없다. 파이썬의 문법은 영문 소문자와 대문자를 구분하므로 예약어의 단어를 굳이 쓰고싶다면 철자를 변경하여 사용할 수 있다.

 

파이썬한글변수
한글 변수도 있다

예약어는 3.7버전에 33개가 있지만 버전업이 되면서 새로운 키워드가 추가 될 수 있다. 따라서 자신이 사용하는 파이썬 버전의 예약어가 무엇인지 파악하고 사용한다. 

 

keyword 라이브러리
파이썬-키워드-리스트
python 3.8.2 의 키워드 리스트 출력

3.8.2에는 35개의 예약어가 있다. 3.7버전의 33개와 차이가 있다.

 

파이썬은 가상환경을 제공하기 때문에 만약 버전이 다른 프로그램 두개가 있고, 각각 사용하는 키워드의 버전이 다르다면 별도의 가상환경을 설치해서 사용하면 호환성 문제를 해결할 수 있다.

 

파이썬이 아무리 입문하기 쉬운 언어라지만, 저 35개의 예약어를 처음 봤다면 머리가 지끈 거릴지도 모른다. 당연하다. 각각의 예약어를 학습하기 위해 파이썬 교재는 하나의 챕터를 차지한다. 예를 들어 반복문은 for,while 예약어를 boolean 연산은 True 와 False 를 학습해야 한다. 파이썬 교재를 한권 정도 제대로 학습하면 저 연산자들의 70%정도를 알게 될 것이다. 그러니까 처음에 압도될 필요가 없다.

 

*식별자 규칙(Identifier)

 

파이썬의 식별자를 작성하는데 몇가지 규칙이 있다.

 

1) 영문 소문자와 대문자 조합으로 사용가능하다. (a to z) (A to Z) 식별자는 대소문자를 구분한다. 또한 한글변수도 사용가능하다.

 

2) 특수문자 중에 언더스코어(Under Score, Under Bar)를 사용한 조합이 가능하다.

 

3) 숫자를 사용할 수 있다. 단, 식별자의 첫글자로 사용할 수 없다.

 

4) 띄어쓰기는 사용할 수 없다. 컴파일러는 띄어쓰기를 하면 별개의 식별자로 인식한다.

 

5) 2의 언더스코어를 제외한 특수문자는 사용 불가능하다. !@#$ 등을 말한다.

 

6) 예약어(Reserved Keywords)는 사용불가하다. (위에서 설명한 부분이다)

 

예제>

 

사용가능 : my_Var, _myNumber, ITEM02

 

사용불가 : Alpha@, A BC, 9NineMusis, global(예약어)

 

*PS : 어떤 언어를 배우던지 키워드는 있다. C언어, 자바에도 다 키워드가 있다. 언어의 특성상 비슷한 키워드 체계를 가질 수 도 있고 다를 수도 있다. 키워드를 잘 보면 그 언어의 특성이 보인다.

 

 

참고 파이썬 예약어(키워드) 튜토리얼 링크

파이썬 키워드 동영상 링크

 

공유하기

facebook twitter kakaoTalk kakaostory naver band