Hướng dẫn how do you get the next business day in python? - làm thế nào để bạn có được ngày làm việc tiếp theo trong python?

Câu hỏi này là phổ biến và có các cấp độ khác nhau của các giải pháp:

Đơn giản nhất: Sử dụng một cái gì đó như cách tiếp cận của bạn trong việc kiểm tra ngày trong tuần. Một idom phổ biến là một cái gì đó giống như

d = datetime.date(2012,2,7)
next = d + datetime.timedelta(days= 7-d.weekday() if d.weekday()>3 else 1)

Khi bạn muốn ngày lễ, bạn có thể cuộn "TradingDateChecker" của riêng mình phải quét cho các ngày lễ "có thể dự đoán được" như ngày 1 tháng 1, ngày 4 tháng 7, ngày 25 tháng 12 ngày thứ Sáu hoặc thứ Hai sau khi chúng rơi vào cuối tuần, thứ Hai tuần trước tại Tháng 5, Thứ Hai đầu tiên trong tháng 9, v.v.

Tôi thậm chí sẽ không buồn đăng mã đó ở đây vì để giao dịch các ngày lễ, nó vẫn không đủ.

  • Thứ Sáu Tuần Thánh NYSE đóng cửa và thị trường trái phiếu và tương lai mở cửa
  • Ngày Columbus và Ngày cựu chiến binh, các ngân hàng đã đóng cửa và thị trường chứng khoán mở cửa.

Các thị trường cổ phiếu và tương lai có các ngày lễ khác nhau. Nếu bạn muốn ngày lễ NYSE (một yêu cầu chung), hãy xem bên dưới. Bạn thực sự không thể có được xung quanh việc giữ lịch của riêng bạn vì ngày kết thúc thường chỉ được công bố trong một vài năm trong tương lai.

# For a longer list of NYSE closed dates see: http://www.chronos-st.org/NYSE_Observed_Holidays-1885-Present.html
holidays = [datetime.date(2000, 1, 17),
 datetime.date(2000, 2, 21),
 datetime.date(2000, 4, 21),
 datetime.date(2000, 5, 29),
 datetime.date(2000, 7, 4),
 datetime.date(2000, 9, 4),
 datetime.date(2000, 11, 23),
 datetime.date(2000, 12, 25),
 datetime.date(2001, 1, 1),
 datetime.date(2001, 1, 15),
 datetime.date(2001, 2, 19),
 datetime.date(2001, 5, 28),
 datetime.date(2001, 7, 4),
 datetime.date(2001, 9, 3),
 datetime.date(2001, 9, 11),
 datetime.date(2001, 9, 12),
 datetime.date(2001, 9, 13),
 datetime.date(2001, 9, 14),
 datetime.date(2001, 11, 22),
 datetime.date(2001, 12, 25),
 datetime.date(2002, 1, 1),
 datetime.date(2002, 1, 21),
 datetime.date(2002, 2, 18),
 datetime.date(2002, 3, 29),
 datetime.date(2002, 5, 27),
 datetime.date(2002, 7, 4),
 datetime.date(2002, 9, 2),
 datetime.date(2002, 11, 28),
 datetime.date(2002, 12, 25),
 datetime.date(2003, 1, 1),
 datetime.date(2003, 1, 20),
 datetime.date(2003, 2, 17),
 datetime.date(2003, 4, 18),
 datetime.date(2003, 5, 26),
 datetime.date(2003, 7, 4),
 datetime.date(2003, 9, 1),
 datetime.date(2003, 11, 27),
 datetime.date(2003, 12, 25),
 datetime.date(2004, 1, 1),
 datetime.date(2004, 1, 19),
 datetime.date(2004, 2, 16),
 datetime.date(2004, 4, 9),
 datetime.date(2004, 5, 31),
 datetime.date(2004, 6, 11),
 datetime.date(2004, 7, 5),
 datetime.date(2004, 9, 6),
 datetime.date(2004, 11, 25),
 datetime.date(2004, 12, 24),
 datetime.date(2005, 1, 17),
 datetime.date(2005, 2, 21),
 datetime.date(2005, 3, 25),
 datetime.date(2005, 5, 30),
 datetime.date(2005, 7, 4),
 datetime.date(2005, 9, 5),
 datetime.date(2005, 11, 24),
 datetime.date(2005, 12, 26),
 datetime.date(2006, 1, 2),
 datetime.date(2006, 1, 16),
 datetime.date(2006, 2, 20),
 datetime.date(2006, 4, 14),
 datetime.date(2006, 5, 29),
 datetime.date(2006, 7, 4),
 datetime.date(2006, 9, 4),
 datetime.date(2006, 11, 23),
 datetime.date(2006, 12, 25),
 datetime.date(2007, 1, 1),
 datetime.date(2007, 1, 2),
 datetime.date(2007, 1, 15),
 datetime.date(2007, 2, 19),
 datetime.date(2007, 4, 6),
 datetime.date(2007, 5, 28),
 datetime.date(2007, 7, 4),
 datetime.date(2007, 9, 3),
 datetime.date(2007, 11, 22),
 datetime.date(2007, 12, 25),
 datetime.date(2008, 1, 1),
 datetime.date(2008, 1, 21),
 datetime.date(2008, 2, 18),
 datetime.date(2008, 3, 21),
 datetime.date(2008, 5, 26),
 datetime.date(2008, 7, 4),
 datetime.date(2008, 9, 1),
 datetime.date(2008, 11, 27),
 datetime.date(2008, 12, 25),
 datetime.date(2009, 1, 1),
 datetime.date(2009, 1, 19),
 datetime.date(2009, 2, 16),
 datetime.date(2009, 4, 10),
 datetime.date(2009, 5, 25),
 datetime.date(2009, 7, 3),
 datetime.date(2009, 9, 7),
 datetime.date(2009, 11, 26),
 datetime.date(2009, 12, 25),
 datetime.date(2010, 1, 1),
 datetime.date(2010, 1, 18),
 datetime.date(2010, 2, 15),
 datetime.date(2010, 4, 2),
 datetime.date(2010, 5, 31),
 datetime.date(2010, 7, 5),
 datetime.date(2010, 9, 6),
 datetime.date(2010, 11, 25),
 datetime.date(2010, 12, 24),
 datetime.date(2011, 1, 17),
 datetime.date(2011, 2, 21),
 datetime.date(2011, 4, 22),
 datetime.date(2011, 5, 30),
 datetime.date(2011, 7, 4),
 datetime.date(2011, 9, 5),
 datetime.date(2011, 11, 24),
 datetime.date(2011, 12, 26),
 datetime.date(2012, 1, 2),
 datetime.date(2012, 1, 16),
 datetime.date(2012, 2, 20),
 datetime.date(2012, 4, 6),
 datetime.date(2012, 5, 28),
 datetime.date(2012, 7, 4),
 datetime.date(2012, 9, 3),
 datetime.date(2012, 11, 22),
 datetime.date(2012, 12, 25),
 datetime.date(2013, 1, 1),
 datetime.date(2013, 1, 21),
 datetime.date(2013, 2, 18),
 datetime.date(2013, 3, 29),
 datetime.date(2013, 5, 27),
 datetime.date(2013, 7, 4),
 datetime.date(2013, 9, 2),
 datetime.date(2013, 11, 28),
 datetime.date(2013, 12, 25)]

Làm thế nào để bạn có được ngày làm việc tiếp theo ở Python?

Bạn có thể thêm 3 phần sau vào mã để có được ngày hệ thống không định dạng (bao gồm cả dấu thời gian) trong Python:..
Current_date = datetime. ngày giờ. hôm nay().
Trước_date = DateTime. ngày giờ. Hôm nay () - DateTime. Timedelta (ngày = 1).
NEXTDAY_DATE = DateTime. ngày giờ. Hôm nay () + DateTime. Timedelta (ngày = 1).

Làm thế nào để bạn có được vào thứ Hai tới ở Python?

Khoa học dữ liệu thực tế sử dụng Python..
Sử dụng hàm Timedelta () ..
Sử dụng hàm tương đối () để có được thứ Hai tuần trước ..
Sử dụng hàm tương đối () để có được vào thứ Hai tới ..
Sử dụng hàm tương đối () để có được thứ Hai tiếp theo ..
Sử dụng hàm Timedelta () để có được Thứ Hai trước đó ..

Làm thế nào để bạn có được vào thứ Sáu tới trong Python?

Để có được tiếp theo, hãy sử dụng (3-Today.weekday ())%7+1.Chỉ là chuyển đổi x%n đến ((x-1)%n) +1.Thứ sáu luôn là 4 khi sử dụng phương thức trong tuần ().(3-today. weekday())%7+1 . Just the old x%n to ((x-1)%n)+1 conversion. Friday is always 4 when using the weekday() method.

Làm thế nào để bạn kiểm tra xem một ngày là một ngày làm việc?

Một ngày làm việc đề cập đến những giờ điển hình trong một ngày khi hoạt động kinh doanh bình thường diễn ra.Một ngày làm việc thường là từ thứ Hai đến thứ Sáu, từ 9 giờ sáng đến 5 giờ chiều, không bao gồm các ngày lễ.the typical hours in a day when normal business operations take place. A business day is normally Monday through Friday, from 9 a.m. to 5 p.m., excluding holidays.