7.1 들여쓰기의 중요성
가끔 여러 명령어를 그룹으로 묶어야 할 때가 있어. 그런 그룹은 명령어 블록 또는 코드 블록이라고 불러. Python에서는 코드 블록 이 들여쓰기로 정의되기 때문에 프로그램 구조가 깔끔하고 읽기 쉽게 만들어.
다른 많은 프로그래밍 언어에서는 코드 블록이 중괄호나 키워드로 구분되지만, Python은 들여쓰기를 사용해서 명령어의 순서를 구분해. 이건 블록 구조라고 불려.
이론적으로 들여쓰기는 공백이나 탭을 사용해서 할 수 있어. 하지만 PEP 8, Python 코드 작성에 관한 공식 스타일 가이드, 에서는 4개의 공백을 사용하라고 권장해. 하나의 들여쓰기 레벨에. 코드 전체에서 일관된 들여쓰기 스타일을 사용하는 것이 중요해.
블록 구조:
코드 블록은 명령어로 시작되고, 그 뒤에 콜론이 와야 해 (예: if, for, while, def, class) 그리고 다음 줄에 들여쓰기가 들어가야 해. 같은 들여쓰기 레벨의 명령어들은 전부 같은 블록의 일부로 간주돼.
들여쓰기는 Python이 코드를 해석하는 방식에 영향을 줘. 잘못된 들여쓰기를 사용하면 IndentationError가 발생하거나 프로그램의 로직이 바뀔 수 있어.
7.2 동일한 들여쓰기 개수
코드 블록의 들여쓰기 개수가 동일한 것이 매우 중요해. 따라서 탭 기호와 공백을 섞어서 사용하는 것은 매우 권장하지 않아. 일부 편집기는 탭 기호를 8개의 공백으로 표시하고, 다른 편집기는 4개로 표시하기도 해. 이건 오류를 유발할 수 있어.
PyCharm은 이 문제를 간단히 해결해: 키보드의 TAB을 누를 때마다 4개의 공백을 삽입해. 탭 기호가 없어서 문제가 없어.
예시:
| 잘못된 예 | 올바른 예 |
|
|
if문들이 몇 개 중첩되어 있을 때, 실수를 범하기 쉬워:
| 잘못된 예 | 올바른 예 |
|
|
어느 if에 else가 연결되는지 확실히 이해해야 해, 그래야지 들여쓰기를 잘못 배치해서 원하는 대로 작동하지 않는 프로그램을 만들지 않아.
특히 초보자들은 이미 작성된 코드 조각을 if 아래로 옮기려고 하거나, 코드 블록을 다른 곳으로 옮길 때, 그곳에서는 다른 들여쓰기 수준이 필요할 때, 이 오류를 자주 저질러.
PyCharm을 사용해: 이 IDE는 이런 문제들을 잘 알고 있어서, 코드를 이동할 때 자동으로 필요한 들여쓰기 개수를 추가해 줘.
GO TO FULL VERSION