- 1. 파이썬 두 리스트 비교하기
- 2. 파이썬으로 html 파일 만들기
- 3. 파이썬 리스트 순서 뒤집기
- 4. 파이썬 리스트 요소 삭제하기
- 5. 파이썬 두 문자열 비교하기 (difflib)
- 6. 파이썬 문자열 앞을 0으로 채우기
- 7. 파이썬 문자열 찾기
- 8. 파이썬 모든 문자열 찾아서 바꾸기
- 9. 파이썬 문자열 결합, 분리하기
- 10. 파이썬 문자열 포맷팅하기
- 11. 파이썬 리스트 슬라이싱 활용하기
- 12. 파이썬 리스트 길이 제한하기
- 13. 파이썬 조건문 간단하게 표현하기
- 14. 파이썬 with 문으로 파일 열고 닫기
- 15. 파이썬 enumerate() 사용하기
- 16. 파이썬 zip() 사용하기
- 17. 파이썬 튜플 언패킹하기
- 18. 파이썬 변수 바꾸기 (swap)
- 19. 파이썬 딕셔너리에서 값 얻기
- 20. 파이썬 출력 결과 저장하기
- 21. 파이썬 폴더 생성하기
- 22. 파이썬 시간 측정하기
- 23. 파이썬 int() 함수 사용하기
- 24. 파이썬 float() 함수 사용하기
- 25. 파이썬 리스트 만들기
- 26. NumPy 어레이 슬라이싱 활용하기
- 27. NumPy 어레이 한 줄에 출력하기
- 28. NumPy 어레이 요소 바꾸기
- 29. NumPy 어레이 정렬 (np.argsort)
- 30. NumPy 어레이 연결, 분리하기
- Python Tutorial
- NumPy Tutorial
- Matplotlib Tutorial
- PyQt5 Tutorial
- BeautifulSoup Tutorial
- xlrd/xlwt Tutorial
- Pillow Tutorial
- Googletrans Tutorial
- PyWin32 Tutorial
- PyAutoGUI Tutorial
- Pyperclip Tutorial
- TensorFlow Tutorial
- Tips and Examples
3. 파이썬 리스트 순서 뒤집기¶
파이썬 리스트 또는 NumPy의 어레이를 다룰 때 순서를 앞뒤로 뒤집어야 하는 상황이 흔하게 발생합니다.
이 페이지에서는 파이썬 리스트 또는 NumPy 어레이의 순서를 뒤집는 방법에 대해 소개합니다.
예를 들어, 아래와 같이 네이버 금융 삼성전자 일별시세 페이지에서 주식의 종가를 크롤링해서 가져왔을 때
최신순에서 시간순으로 정렬할 필요가 있을 수 있습니다.
■ Table of Contents
1. 파이썬 리스트 뒤집기¶
1) 슬라이싱 사용하기¶
파이썬 리스트를 뒤집는 가장 간편한 방법은 아래와 같이 리스트 슬라이싱 기능을 사용하는 것입니다.
예제¶
close = [46250, 46600, 47000, 46500, 45700, 45600, 45500, 45700, 45500, 45350]
reversed_close = close[::-1]
print(reversed_close)
[45350, 45500, 45700, 45500, 45600, 45700, 46500, 47000, 46600, 46250]
close[::-1]은 순서가 뒤집어진 close 리스트가 됩니다.
하지만 원본 리스트 close는 바뀌지 않습니다.
파이썬 리스트의 슬라이싱에 대한 자세한 내용은 파이썬 - 리스트 슬라이싱 페이지를 참고하세요.
2) reverse() 메서드 사용하기¶
파이썬 리스트를 뒤집는 또 다른 방법은 reverse() 메서드를 사용하는 것입니다.
예제¶
close = [46250, 46600, 47000, 46500, 45700, 45600, 45500, 45700, 45500, 45350]
close.reverse()
print(close)
[45350, 45500, 45700, 45500, 45600, 45700, 46500, 47000, 46600, 46250]
파이썬 리스트의 메서드 중 하나인 reverse()는 해당 리스트의 순서를 뒤집습니다.
원본 리스트 close의 순서가 바뀝니다.
파이썬 리스트의 다양한 메서드에 대해서는 파이썬 - 리스트 메서드 페이지를 참고하세요.
3) 내장함수 reversed() 사용하기¶
파이썬 내장함수 reversed()를 사용해서 리스트와 같은 시퀀스 자료형을 뒤집을 수 있습니다.
예제¶
close = [46250, 46600, 47000, 46500, 45700, 45600, 45500, 45700, 45500, 45350]
reversed_close = list(reversed(close))
print(reversed_close)
[45350, 45500, 45700, 45500, 45600, 45700, 46500, 47000, 46600, 46250]
reverse() 내장함수는 주어진 시퀀스 (리스트, 튜플 등)에 대해 순서가 뒤집어진 iterator 객체의 형태로 반환하기 때문에
내장함수 list()를 이용해서 리스트 자료형으로 변환해줍니다.
원본 리스트 close의 순서는 바뀌지 않습니다.
2. NumPy 어레이 뒤집기¶
1) 슬라이싱 사용하기¶
파이썬의 리스트와 같이 NumPy의 어레이에 대해서도 슬라이싱 기능을 사용할 수 있습니다.
예제¶
import numpy as np
close = np.array([46250, 46600, 47000, 46500, 45700, 45600, 45500, 45700, 45500, 45350])
reversed_close = close[::-1]
print(reversed_close)
[45350 45500 45700 45500 45600 45700 46500 47000 46600 46250]
close[::-1]는 뒤집어진 NumPy 어레이를 반환합니다.
NumPy 어레이에 대해서는 NumPy 다양한 함수들 - numpy.array 페이지를 참고하세요.
2) numpy.flip() 사용하기¶
np.flip() 메서드는 어레이 요소의 순서를 뒤집습니다.
예제¶
import numpy as np
close = np.array([46250, 46600, 47000, 46500, 45700, 45600, 45500, 45700, 45500, 45350])
reversed_close = np.flip(close)
print(reversed_close)
[45350 45500 45700 45500 45600 45700 46500 47000 46600 46250]
np.flip(close)는 순서가 뒤집어진 close 어레이를 반환합니다.
원본 어레이 close는 바뀌지 않습니다.
3) numpy.flipud() 사용하기¶
1차원 어레이에 대해 np.flipud() 메서드는 np.flip()과 같은 동작을 합니다.
예제¶
import numpy as np
close = np.array([46250, 46600, 47000, 46500, 45700, 45600, 45500, 45700, 45500, 45350])
reversed_close = np.flipud(close)
print(reversed_close)
[45350 45500 45700 45500 45600 45700 46500 47000 46600 46250]
np.flipud(close)는 순서가 뒤집어진 close 어레이를 반환합니다.
4) np.flip() vs np.flipud() vs np.fliplr()¶
np.flip(), np.flipud(), np.fliplr() 메서드의 차이에 대해 알아봅니다.
2차원 어레이에서 세가지 메서드는 다르게 동작합니다.
np.flip()은 요소의 순서를 뒤집습니다.
np.flipud()는 flip up/down direction 메서드입니다. 요소를 위/아래 방향으로 뒤집습니다.
np.fliplr()는 flip left/right direction 메서드입니다. 요소를 좌/우 방향으로 뒤집습니다.
예제¶
import numpy as np
a = np.array([[1, 2], [3, 4]])
print(a)
print(np.flip(a))
print(np.flipud(a))
print(np.fliplr(a))
[[1 2]
[3 4]]
[[4 3]
[2 1]]
[[3 4]
[1 2]]
[[2 1]
[4 3]]
np.flipud(arr)는 arr[::-1, …]과 동일합니다.
np.fliplr(arr)는 최소 2차원 이상의 어레이에 대해 동작하며 arr[:,::-1]과 동일합니다.