티스토리 뷰
목차
반응형
총 5개 방법으로 배열을 거꾸로(역순) 출력하는 예제 소개합니다.
파이썬 배열을 선언하고, while, range 역순, reversed, slice notation 이용합니다.
◆ 예제 소스
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | #-*- coding: utf-8 -*- # 배열 선언 colors = ['black', 'White', 'red', 'GREEN', 'blue'] # 1. while 문 i = len(colors) - 1 while i >= 0: print(colors[i], end=', ') i -= 1 print() # 2. range 역순 출력 1 for c in range(-1, -len(colors)-1, -1): print(colors[c], end=', ') print() # 3. range 역순 출력 2 for c in range(len(colors) - 1, -1, -1): print(colors[c], end=', ') print() # 4. reversed 함수 이용 for c in reversed(colors): print(c, end=', ') print() # 5. slice notation 이용 rev = colors[::-1] print(rev) | cs |
4번 라인에 colors 라는 배열을 선언했습니다.
예제 2, 3번은 range 함수를 이용하는데, 시작 값을 -1, 또는 배열 크기로 주어 거꾸로 출력합니다.
23번 라인 reversed 함수는 문자 그대로 거꾸로 출력하는데 이용하는 함수입니다.
핵심은 28번 slice notation : 슬라이싱 입니다. 슬라이싱 slice notation 2개를 사용하고 -1을 인자로 이용해 거꾸로 출력합니다. 만약 [] 사이에 스텝을 넣지 않으면 의도치 않은 결과를 보일 수 있습니다.
◆ 슬라이싱 slicing
slice notation 특징 7개는 아래와 같습니다.
- a[start:end] # start부터 end-1까지의 item
- a[start:] # start부터 리스트 끝까지 item
- a[:end] # 처음부터 end-1까지의 item
- a[:] # 리스트의 모든 item
- a[-1] # 맨 뒤의 item
- a[-2:] # 맨 뒤에서부터 item2개
- a[:-n] # 맨 뒤의 item n개 빼고 전부
관련 글
▷ 파이썬 SQLite3 자료형 정리 (Python DB)
▷ ROS 자료형-ROS C++ 파이썬 비교 (c++ vs python)
▷ 파이썬 정수 최대값 구하기 소스 2개, random 함수
ⓒ written by vicddory
반응형