1. 왜 1~256까지 범위를 설정하면, 255까지 (즉, 1을 빼고) max 범위를 설정해야 하는가?
- 1이 아닌 0부터 시작하기 때문임
- python같은 코딩 프로그램에선 (컴퓨터의 세계에선) 1이 아닌 늘 0으로 시작하는 것을 명심해야 함
2. 괄호의 의미들
1) [ ] : 리스트
- 순서대로 저장하는 시퀀스이자 변경 가능한 목록(Mutable List)
2) { } : 딕셔너리
- 딕셔너리는 리스트의 각 항목의 빈도수를 세는데 편리
- 키/값 구조로 이뤄진 딕셔너리
- 키와 값의 쌍 구조를 가지고 있는 자료 구조
3) ( ) : 튜플
- 소괄호 ()를 이용하여 요소들을 묶음
- 리스트와 다르게 변수에 대입 가능
3. 파이썬 계층 구조
4. 슬라이싱 : 위치를 지정하면 해당 위치의 배열 포인터를 얻게 되며 이를 통해 연결된 객체를 찾아 실제 값을 찾는 것
문법 |
결과 |
설명 |
S[1:4] |
녕하세 |
인덱스 1에서(0부터 시작) 4 이전까지(4는 포함하지 않는다) 표현한다. |
S[1:-2] |
녕하 |
인덱스 1에서 -2 이전까지(-2는 포함하지 않는다) 표현한다. |
S[1:] |
녕하세요 |
문자열의 시작 또는 끝은 생략 가능하다. |
S[:] |
안녕하세요 |
둘 다 생략하면 사본을 리턴한다. |
S[1:100] |
녕하세요 |
인덱스가 지나치게 클 경우 문자열의 최대 길이만큼만 표현된다. |
S[-1] |
요 |
마지막 문자(뒤에서 첫 번째) |
S[-4] |
녕 |
뒤에서 4번째 |
S[:-3] |
안녕 |
뒤에서 3개 글자 앞까지 |
S[-3:] |
하세요 |
뒤에서 3번째 문자에서 마지막까지 |
S[::1] |
안녕하세요 |
1은 기본값으로 동일하다. |
S[::-1] |
요세하녕안 |
뒤집는다. |
S[::2] |
안하요 |
2칸씩 앞으로 이동한다. |