ค้นหาวันที่สิ้นสุดหากเรามีวันที่เริ่มต้นและช่วงเวลา ไม่รวมรายการวันหยุดที่กำหนดเองและวันหยุดสุดสัปดาห์ ใน Python (Django)
Aug 17 2020
ดังนั้นสิ่งที่ฉันพยายามจะบรรลุคือ
start_date = "2020-07-16"
number_of_days = 15
holidays = ["2020-07-19",2020-07-21]
ตอนนี้ฉันต้องการคำนวณวันที่สิ้นสุดคือ 16 สิงหาคม + 15 วันไม่รวมวันหยุดที่กำหนดเองทั้งหมดที่ฉันให้ไว้ในรายการและวันหยุดสุดสัปดาห์ทั้งหมด (วันอาทิตย์ + วันเสาร์)
ข้อเสนอแนะใด ๆ เกี่ยวกับวิธีที่ฉันจะบรรลุ วิธีแก้ปัญหาที่ฉันพบจนถึงตอนนี้คือการใช้ NumPy แต่ไม่ตรงตามความต้องการของฉัน
คำตอบ
2 MareksNo Aug 17 2020 at 18:11
total_days = number_of_days
for i in number_of_days:
current_day = start_data + timedelta(days=i)
if current_day in holidays:
total_days += 1
elif current_day.isoweekday() in [6, 7]:
total_days += 1
end_date = start_date + timedelta(days= total_days)
ฉันหวังว่าอย่างน้อยสิ่งนี้จะสามารถเข้าใกล้คำตอบที่คุณต้องการได้ฉันไม่แน่ใจว่าเกี่ยวกับไวยากรณ์ที่แน่นอนในขณะที่ฉันกำลังใช้โทรศัพท์
แต่ดูที่คำตอบ NumPy แล้วอะไรที่ไม่ตรงกับความต้องการของคุณ?