Hướng dẫn python create list of end of month dates - python tạo danh sách các ngày cuối tháng

Nhận được tháng cuối, hoặc bất kỳ khoảng thời gian nào khác có thể cồng kềnh. Trong bài đăng này, tôi sẽ chỉ cho bạn cách tạo một danh sách các ngày nhanh chóng trong Python.

import pandas as pd import datetime as dt #Yesterday's date pd.date_range(start='1/31/2000', end= dt.datetime.now())[-2] #Most recent month end date pd.date_range(start='1/31/2000', end= dt.datetime.now(), freq='M')[-1] #Most recent quarter end date pd.date_range(start='1/31/2000', end= dt.datetime.now(), freq='Q')[-1] #Most recent year end date pd.date_range(start='1/31/2000', end= dt.datetime.now(), freq='Y')[-1]

Giải thích thêm

Nếu bạn đã từng cố gắng để có được ngày cuối tháng trước bằng Python, có lẽ bạn sẽ biết rằng nó khá khó khăn. Ví dụ, hôm nay là 2020-11-11 và tôi cần phải có 2020-10-31 dưới dạng biến để lọc và một vài nhiệm vụ khác. Bạn có thể gây rối với mô -đun DateTime, nhưng nó không đơn giản như người ta nghĩ.

Đây là nơi chức năng Pandas pd.date_range phát huy tác dụng. Nó sẽ tạo ra một danh sách các ngày khi bạn vượt qua trong ngày bắt đầu, ngày kết thúc và tần số tùy chọn. Có nhiều lập luận bạn cũng có thể truyền lại nhưng ba người đó sẽ thực hiện công việc.

Bạn sẽ muốn nhập các gói pandas và datetime.

import pandas as pd import datetime as dt

Đơn giản chỉ cần chuyển trong một ngày bắt đầu và một ngày kết thúc và chức năng sẽ tạo ra một danh sách các ngày có tần số một ngày.

Thêm vào một đối số tần số của M và bạn nhanh chóng nhận được một danh sách các ngày kết thúc tháng.

Bạn cũng có khả năng thực hiện tần suất hàng tuần và chỉ định ngày trong tuần để nhóm.

Nếu bạn nhận thấy ở trên, tôi đã thêm vào dt.datetime.now() trong đối số end của tôi. Đây là một mẹo để làm cho danh sách động. Khi được nhập, mục cuối cùng trong danh sách là ngày kết thúc thường xuyên nhất trong quá khứ. Nói cách khác, bạn đã giành được một ngày kết thúc lớn hơn ngày được sử dụng trong đối số end.

Cuối cùng, vì chức năng tạo ra một danh sách, bạn có thể áp dụng [-1] vào danh sách của mình để nhận ngày mới nhất từ ​​danh sách của bạn.

Cảm ơn vì đã đọc!

Nếu bạn muốn một từ điển có chứa cặp ngày bắt đầu và ngày kết thúc của tháng giữa các năm mong muốn của bạn, thì đây là cách để có được điều đó.

start_year = int(input("Enter Starting Year: ")) end_year = int(input("Enter Ending Year: ")) import calendar month_dict = {} for x in range(start_year, end_year): for y in range(1, 13): if y < 10: start_date = '01'+'-'+'0'+str(y)+'-'+str(x) end_date = str(calendar.monthrange(x, y)[1])+'-'+'0'+str(y)+'-'+str(x) month_dict[start_date] = end_date else: start_date = '01'+'-'+str(y)+'-'+str(x) end_date = str(calendar.monthrange(x, y)[1])+'-'+str(y)+'-'+str(x) month_dict[start_date] = end_date

Điều này cho đầu ra sau:

{'01-01-2000': '31-01-2000', '01-02-2000': '29-02-2000', '01-03-2000': '31-03-2000', '01-04-2000': '30-04-2000', '01-05-2000': '31-05-2000', '01-06-2000': '30-06-2000', '01-07-2000': '31-07-2000', '01-08-2000': '31-08-2000', '01-09-2000': '30-09-2000', '01-10-2000': '31-10-2000', '01-11-2000': '30-11-2000', '01-12-2000': '31-12-2000', '01-01-2001': '31-01-2001', '01-02-2001': '28-02-2001', '01-03-2001': '31-03-2001', '01-04-2001': '30-04-2001', '01-05-2001': '31-05-2001', '01-06-2001': '30-06-2001', '01-07-2001': '31-07-2001', '01-08-2001': '31-08-2001', '01-09-2001': '30-09-2001', '01-10-2001': '31-10-2001', '01-11-2001': '30-11-2001', '01-12-2001': '31-12-2001', '01-01-2002': '31-01-2002', '01-02-2002': '28-02-2002', '01-03-2002': '31-03-2002', '01-04-2002': '30-04-2002', '01-05-2002': '31-05-2002', '01-06-2002': '30-06-2002', '01-07-2002': '31-07-2002', '01-08-2002': '31-08-2002', '01-09-2002': '30-09-2002', '01-10-2002': '31-10-2002', '01-11-2002': '30-11-2002', '01-12-2002': '31-12-2002', '01-01-2003': '31-01-2003', '01-02-2003': '28-02-2003', '01-03-2003': '31-03-2003', '01-04-2003': '30-04-2003', '01-05-2003': '31-05-2003', '01-06-2003': '30-06-2003', '01-07-2003': '31-07-2003', '01-08-2003': '31-08-2003', '01-09-2003': '30-09-2003', '01-10-2003': '31-10-2003', '01-11-2003': '30-11-2003', '01-12-2003': '31-12-2003', '01-01-2004': '31-01-2004', '01-02-2004': '29-02-2004', '01-03-2004': '31-03-2004', '01-04-2004': '30-04-2004', '01-05-2004': '31-05-2004', '01-06-2004': '30-06-2004', '01-07-2004': '31-07-2004', '01-08-2004': '31-08-2004', '01-09-2004': '30-09-2004', '01-10-2004': '31-10-2004', '01-11-2004': '30-11-2004', '01-12-2004': '31-12-2004', '01-01-2005': '31-01-2005', '01-02-2005': '28-02-2005', '01-03-2005': '31-03-2005', '01-04-2005': '30-04-2005', '01-05-2005': '31-05-2005', '01-06-2005': '30-06-2005', '01-07-2005': '31-07-2005', '01-08-2005': '31-08-2005', '01-09-2005': '30-09-2005', '01-10-2005': '31-10-2005', '01-11-2005': '30-11-2005', '01-12-2005': '31-12-2005', '01-01-2006': '31-01-2006', '01-02-2006': '28-02-2006', '01-03-2006': '31-03-2006', '01-04-2006': '30-04-2006', '01-05-2006': '31-05-2006', '01-06-2006': '30-06-2006', '01-07-2006': '31-07-2006', '01-08-2006': '31-08-2006', '01-09-2006': '30-09-2006', '01-10-2006': '31-10-2006', '01-11-2006': '30-11-2006', '01-12-2006': '31-12-2006', '01-01-2007': '31-01-2007', '01-02-2007': '28-02-2007', '01-03-2007': '31-03-2007', '01-04-2007': '30-04-2007', '01-05-2007': '31-05-2007', '01-06-2007': '30-06-2007', '01-07-2007': '31-07-2007', '01-08-2007': '31-08-2007', '01-09-2007': '30-09-2007', '01-10-2007': '31-10-2007', '01-11-2007': '30-11-2007', '01-12-2007': '31-12-2007', '01-01-2008': '31-01-2008', '01-02-2008': '29-02-2008', '01-03-2008': '31-03-2008', '01-04-2008': '30-04-2008', '01-05-2008': '31-05-2008', '01-06-2008': '30-06-2008', '01-07-2008': '31-07-2008', '01-08-2008': '31-08-2008', '01-09-2008': '30-09-2008', '01-10-2008': '31-10-2008', '01-11-2008': '30-11-2008', '01-12-2008': '31-12-2008', '01-01-2009': '31-01-2009', '01-02-2009': '28-02-2009', '01-03-2009': '31-03-2009', '01-04-2009': '30-04-2009', '01-05-2009': '31-05-2009', '01-06-2009': '30-06-2009', '01-07-2009': '31-07-2009', '01-08-2009': '31-08-2009', '01-09-2009': '30-09-2009', '01-10-2009': '31-10-2009', '01-11-2009': '30-11-2009', '01-12-2009': '31-12-2009', '01-01-2010': '31-01-2010', '01-02-2010': '28-02-2010', '01-03-2010': '31-03-2010', '01-04-2010': '30-04-2010', '01-05-2010': '31-05-2010', '01-06-2010': '30-06-2010', '01-07-2010': '31-07-2010', '01-08-2010': '31-08-2010', '01-09-2010': '30-09-2010', '01-10-2010': '31-10-2010', '01-11-2010': '30-11-2010', '01-12-2010': '31-12-2010', '01-01-2011': '31-01-2011', '01-02-2011': '28-02-2011', '01-03-2011': '31-03-2011', '01-04-2011': '30-04-2011', '01-05-2011': '31-05-2011', '01-06-2011': '30-06-2011', '01-07-2011': '31-07-2011', '01-08-2011': '31-08-2011', '01-09-2011': '30-09-2011', '01-10-2011': '31-10-2011', '01-11-2011': '30-11-2011', '01-12-2011': '31-12-2011', '01-01-2012': '31-01-2012', '01-02-2012': '29-02-2012', '01-03-2012': '31-03-2012', '01-04-2012': '30-04-2012', '01-05-2012': '31-05-2012', '01-06-2012': '30-06-2012', '01-07-2012': '31-07-2012', '01-08-2012': '31-08-2012', '01-09-2012': '30-09-2012', '01-10-2012': '31-10-2012', '01-11-2012': '30-11-2012', '01-12-2012': '31-12-2012', '01-01-2013': '31-01-2013', '01-02-2013': '28-02-2013', '01-03-2013': '31-03-2013', '01-04-2013': '30-04-2013', '01-05-2013': '31-05-2013', '01-06-2013': '30-06-2013', '01-07-2013': '31-07-2013', '01-08-2013': '31-08-2013', '01-09-2013': '30-09-2013', '01-10-2013': '31-10-2013', '01-11-2013': '30-11-2013', '01-12-2013': '31-12-2013', '01-01-2014': '31-01-2014', '01-02-2014': '28-02-2014', '01-03-2014': '31-03-2014', '01-04-2014': '30-04-2014', '01-05-2014': '31-05-2014', '01-06-2014': '30-06-2014', '01-07-2014': '31-07-2014', '01-08-2014': '31-08-2014', '01-09-2014': '30-09-2014', '01-10-2014': '31-10-2014', '01-11-2014': '30-11-2014', '01-12-2014': '31-12-2014', '01-01-2015': '31-01-2015', '01-02-2015': '28-02-2015', '01-03-2015': '31-03-2015', '01-04-2015': '30-04-2015', '01-05-2015': '31-05-2015', '01-06-2015': '30-06-2015', '01-07-2015': '31-07-2015', '01-08-2015': '31-08-2015', '01-09-2015': '30-09-2015', '01-10-2015': '31-10-2015', '01-11-2015': '30-11-2015', '01-12-2015': '31-12-2015', '01-01-2016': '31-01-2016', '01-02-2016': '29-02-2016', '01-03-2016': '31-03-2016', '01-04-2016': '30-04-2016', '01-05-2016': '31-05-2016', '01-06-2016': '30-06-2016', '01-07-2016': '31-07-2016', '01-08-2016': '31-08-2016', '01-09-2016': '30-09-2016', '01-10-2016': '31-10-2016', '01-11-2016': '30-11-2016', '01-12-2016': '31-12-2016', '01-01-2017': '31-01-2017', '01-02-2017': '28-02-2017', '01-03-2017': '31-03-2017', '01-04-2017': '30-04-2017', '01-05-2017': '31-05-2017', '01-06-2017': '30-06-2017', '01-07-2017': '31-07-2017', '01-08-2017': '31-08-2017', '01-09-2017': '30-09-2017', '01-10-2017': '31-10-2017', '01-11-2017': '30-11-2017', '01-12-2017': '31-12-2017', '01-01-2018': '31-01-2018', '01-02-2018': '28-02-2018', '01-03-2018': '31-03-2018', '01-04-2018': '30-04-2018', '01-05-2018': '31-05-2018', '01-06-2018': '30-06-2018', '01-07-2018': '31-07-2018', '01-08-2018': '31-08-2018', '01-09-2018': '30-09-2018', '01-10-2018': '31-10-2018', '01-11-2018': '30-11-2018', '01-12-2018': '31-12-2018', '01-01-2019': '31-01-2019', '01-02-2019': '28-02-2019', '01-03-2019': '31-03-2019', '01-04-2019': '30-04-2019', '01-05-2019': '31-05-2019', '01-06-2019': '30-06-2019', '01-07-2019': '31-07-2019', '01-08-2019': '31-08-2019', '01-09-2019': '30-09-2019', '01-10-2019': '31-10-2019', '01-11-2019': '30-11-2019', '01-12-2019': '31-12-2019', '01-01-2020': '31-01-2020', '01-02-2020': '29-02-2020', '01-03-2020': '31-03-2020', '01-04-2020': '30-04-2020', '01-05-2020': '31-05-2020', '01-06-2020': '30-06-2020', '01-07-2020': '31-07-2020', '01-08-2020': '31-08-2020', '01-09-2020': '30-09-2020', '01-10-2020': '31-10-2020', '01-11-2020': '30-11-2020', '01-12-2020': '31-12-2020', '01-01-2021': '31-01-2021', '01-02-2021': '28-02-2021', '01-03-2021': '31-03-2021', '01-04-2021': '30-04-2021', '01-05-2021': '31-05-2021', '01-06-2021': '30-06-2021', '01-07-2021': '31-07-2021', '01-08-2021': '31-08-2021', '01-09-2021': '30-09-2021', '01-10-2021': '31-10-2021', '01-11-2021': '30-11-2021', '01-12-2021': '31-12-2021'}

Làm thế nào để bạn đến cuối tháng ở Python?

Tính ngày vào cuối tháng Có một vài cách để làm điều này, nhưng tôi đã đi với những điều sau: last_date = dateTime (năm, tháng + 1, 1) + Timedelta (ngày = -1). Điều này sẽ tính toán ngày đầu tiên của tháng sau, sau đó trừ 1 ngày từ đó để có được ngày cuối cùng của tháng hiện tại.last_date = datetime(year, month + 1, 1) + timedelta(days=-1) . This will calculate the first date of the following month, then subtract 1 day from it to get the last date of the current month.

Làm thế nào để bạn tạo ra một loạt các ngày trong Python?

TimedelTa () để tạo ra một loạt các ngày.Sử dụng vòng lặp để lặp qua phạm vi (Dừng) trong đó điểm dừng là số ngày mong muốn.Sử dụng toán tử + để thêm DateTime.Timedelta (ngày) đến DateTime bắt đầu.Use a for-loop to iterate through range(stop) where stop is the wanted number of days. Use the + operator to add datetime. timedelta(days) to the starting datetime.

Làm thế nào để bạn tạo ra một phạm vi ngày hàng tháng trong Python?

Tạo phạm vi thời gian trong Python: Phạm vi ngày và phạm vi tháng..
Nhập gấu trúc dưới dạng pd min_date = "2020-01-01" max_date = "2020-12-31".
ngày = pd.ngày_range (min_date, max_date) ngày ..
ngày = pd.....
min_month = "2020-01" MAX_MONTH = "2020-12" tháng = pd.....
tháng.....
min_year = "1995" max_year = "2021" năm = pd ..

Làm cách nào để tạo một phạm vi ngày trong gấu trúc?

Bạn có thể sử dụng hàm pandas.date_range () để tạo phạm vi ngày trong gấu trúc.use the pandas. date_range() function to create a date range in pandas.

Chủ đề