Python에서 날짜 및 시간 정렬
- Python에서 날짜 및 시간 정렬
-
sorted()
메서드를 사용하여 날짜 정렬 -
sorted()
메서드를 사용하여 시간 정렬 -
sorted()
메서드를 사용하여 날짜와 시간 모두 정렬 - 결론
Python은 프로그래머가 전 세계적으로 사용하는 고급 해석 프로그래밍 언어입니다. 객체 지향 프로그래밍으로 가장 유명합니다.
인공 지능, 기계 학습, 웹 개발 및 데이터 분석과 관련된 다양한 IT 분야에서 Python을 사용할 수 있습니다. Python이 대중적이고 실용적인 또 다른 이유는 내장 라이브러리와 모듈이 많기 때문입니다.
이 기사에서는 Python을 사용하여 날짜와 시간을 정렬하는 방법을 알려줍니다. 또한 datetime
모듈과 sorted
방법도 배웁니다.
Python에서 날짜 및 시간 정렬
Python을 사용하여 할 수 있는 한 가지 기능은 날짜와 시간을 정렬하는 것입니다. 주어진 날짜와 시간을 정렬해야 하는 경우가 있을 수 있습니다.
예를 들어 서로 다른 날짜 및 시간 목록이 있고 이를 오름차순 또는 내림차순으로 설정해야 하는 경우 Python을 사용하여 정렬할 수 있습니다.
Python의 datetime
모듈
무엇보다 정렬할 날짜와 시간이 있어야 합니다. Python은 날짜와 시간을 쉽게 다룰 수 있도록 datetime
모듈을 제공합니다.
datetime
모듈에는 date
, time
, datetime
, timedelta
, tzinfo
및 timezone
과 같은 6개의 기본 클래스가 있습니다.
sorted()
메서드
sorted()
는 목록의 요소를 정렬하는 데 사용할 수 있는 Python의 내장 함수입니다. sorted()
메서드의 구문은 다음과 같습니다.
sorted(iterable, key=key, reverse=reverse)
여기서 iterable
은 정렬해야 하는 시퀀스 또는 반복자를 의미합니다. 튜플, 목록 또는 사전일 수 있습니다.
key
및 reverse
는 sorted
기능에 제공할 수 있는 선택적 값입니다.
정렬 순서를 결정하려는 경우 키
는 이를 달성하기 위해 실행할 수 있는 기능입니다. 기본값은 없음
입니다.
reverse
는 true
및 false
값을 고려하는 부울입니다. true
를 값으로 설정하면 내림차순으로 정렬하고 false
를 값으로 설정하면 요소를 오름차순으로 정렬합니다.
reverse
의 기본값은 false
입니다.
이 방법을 사용하여 날짜와 시간을 정렬할 수 있습니다. 어떻게 할 수 있는지 봅시다.
sorted()
메서드를 사용하여 날짜 정렬
첫 번째 단계로 날짜와 시간으로 작업하고 있으므로 datetime
모듈에서 datetime
메서드를 가져와야 합니다.
from datetime import datetime
그런 다음 임의의 날짜로 목록을 정의할 수 있습니다.
dateList = ["2022-10-07", "2022-10-04", "2022-10-31", "2022-10-01"]
여기서 추가한 날짜는 연도와 월은 같지만 날짜는 다릅니다. 그것들을 정렬하고 출력해 봅시다.
print(sorted(dateList))
위 문장에서 print()
함수 내부에 sorted()
메서드를 사용했습니다. 또한 해당 메서드를 변수에 할당하고 인쇄할 수 있습니다.
sortedDateList = sorted(dateList)
print(sortedDateList)
두 문 모두 동일한 출력을 제공합니다. 이 예에서는 첫 번째 방법을 사용합니다.
전체 코드:
from datetime import datetime
dateList = ["2022-10-07", "2022-10-04", "2022-10-31", "2022-10-01"]
print(sorted(dateList))
출력:
보시다시피 날짜가 오름차순으로 정렬되었습니다.
값이 true
인 reverse
속성을 추가하여 내림차순으로 정렬해 보겠습니다.
print(sorted(dateList, reverse=True))
코드를 실행하면 아래와 같은 결과를 얻을 수 있습니다.
위 이미지와 같이 날짜를 내림차순으로 정렬할 수 있습니다.
이제 다른 연도와 달을 사용하여 다시 시도해 봅시다.
dateList = ["2022-10-07", "2021-10-07", "2021-09-07", "2020-10-07", "2020-10-01"]
그런 다음 앞에서 했던 것처럼 정렬하고 인쇄할 수 있습니다.
print(sorted(dateList))
이제 아래 이미지와 같은 결과를 얻을 수 있습니다.
sorted()
메서드를 사용하여 시간 정렬
이전에는 날짜 정렬을 시도했습니다. 이제 이 방법을 사용하여 다른 시간을 정렬해 보겠습니다.
datetime
모듈에서 datetime
메소드를 가져오겠습니다.
from datetime import datetime
그런 다음 다른 시간으로 목록을 만들 수 있습니다.
timeList = ["14:00:00", "02:00:00", "10:00:00", "23:00:00", "05:00:00"]
이제 정렬하고 인쇄해 봅시다.
print(sorted(timeList))
출력:
출력으로 시간 목록을 오름차순으로 가져옵니다. 앞에서 했던 것처럼 시간을 내림차순으로 정렬할 수도 있습니다.
print("\n", sorted(timeList, reverse=True))
출력:
아래와 같이 분과 초를 다르게 하여 시간을 변경해 봅시다.
timeList = ["14:03:29", "02:24:23", "10:02:59", "02:23:24", "10:03:00"]
print(sorted(timeList))
코드를 실행하면 아래와 같은 예상 결과를 얻을 수 있습니다.
sorted()
메서드를 사용하여 날짜와 시간 모두 정렬
이전 단계에서는 날짜와 시간을 별도로 정렬했습니다. 이제 날짜와 시간을 함께 정렬해 보겠습니다.
dateTimeList
라는 새 목록을 만들어 보겠습니다. 그런 다음 아래 코드 블록에 표시된 것처럼 다른 시간과 함께 일부 날짜를 추가할 수 있습니다.
dateTimeList = [
"2022-10-07 14:03:29",
"2022-10-08 02:01:23",
"2022-10-07 10:02:59",
"2022-10-07 02:01:24",
]
보시다시피 4개의 날짜와 다른 시간이 있습니다. 이 방법을 통해 정렬된 목록을 얻을 수 있는지 살펴보자.
print(sorted(dateTimeList))
출력:
위의 이미지에서와 같이 정렬된 날짜 및 시간 목록이 표시됩니다.
결론
이 자습서에서는 날짜와 시간을 정렬하는 sorted()
메서드인 Python 기술을 배웠습니다.
첫 번째 단계로 datetime
모듈을 가져와야 하고 그로부터 datetime
메서드도 가져와야 합니다. 그래야만 날짜와 시간을 다룰 수 있습니다.
sorted()
메서드를 사용하여 날짜와 시간이 다른 목록을 만들고 개념을 이해하기 위해 예제로 정렬했습니다. 날짜와 시간을 정렬하는 다른 방법이 있지만 이것은 Python이 제공하는 간단한 방법입니다.
Nimesha is a Full-stack Software Engineer for more than five years, he loves technology, as technology has the power to solve our many problems within just a minute. He have been contributing to various projects over the last 5+ years and working with almost all the so-called 03 tiers(DB, M-Tier, and Client). Recently, he has started working with DevOps technologies such as Azure administration, Kubernetes, Terraform automation, and Bash scripting as well.