from datetime import datetime, timedelta
def generate_delivery_interval(min_days=1, max_days=14, skip_weekends=True):
start = datetime.now()
# Calculate minimum delivery date (starting tomorrow)
min_date = start + timedelta(days=min_days)
# Calculate maximum delivery date
max_date = start
if skip_weekends:
days_added = 0
while days_added < max_days:
max_date += timedelta(days=1)
if max_date.isoweekday() < 6: # Monday=1, Sunday=7
days_added += 1
else:
max_date += timedelta(days=max_days)
# Format dates - show day and date
min_formatted = min_date.strftime('%a, %-d') # Thu, 27
max_formatted = max_date.strftime('%a, %b %-d') # Thu, Sep 9
return f"Est. delivery {min_formatted} - {max_formatted}"
# Test the function
print(generate_delivery_interval())
ZnJvbSBkYXRldGltZSBpbXBvcnQgZGF0ZXRpbWUsIHRpbWVkZWx0YQoKZGVmIGdlbmVyYXRlX2RlbGl2ZXJ5X2ludGVydmFsKG1pbl9kYXlzPTEsIG1heF9kYXlzPTE0LCBza2lwX3dlZWtlbmRzPVRydWUpOgogICAgc3RhcnQgPSBkYXRldGltZS5ub3coKQogICAgCiAgICAjIENhbGN1bGF0ZSBtaW5pbXVtIGRlbGl2ZXJ5IGRhdGUgKHN0YXJ0aW5nIHRvbW9ycm93KQogICAgbWluX2RhdGUgPSBzdGFydCArIHRpbWVkZWx0YShkYXlzPW1pbl9kYXlzKQogICAgCiAgICAjIENhbGN1bGF0ZSBtYXhpbXVtIGRlbGl2ZXJ5IGRhdGUKICAgIG1heF9kYXRlID0gc3RhcnQKICAgIGlmIHNraXBfd2Vla2VuZHM6CiAgICAgICAgZGF5c19hZGRlZCA9IDAKICAgICAgICB3aGlsZSBkYXlzX2FkZGVkIDwgbWF4X2RheXM6CiAgICAgICAgICAgIG1heF9kYXRlICs9IHRpbWVkZWx0YShkYXlzPTEpCiAgICAgICAgICAgIGlmIG1heF9kYXRlLmlzb3dlZWtkYXkoKSA8IDY6ICAjIE1vbmRheT0xLCBTdW5kYXk9NwogICAgICAgICAgICAgICAgZGF5c19hZGRlZCArPSAxCiAgICBlbHNlOgogICAgICAgIG1heF9kYXRlICs9IHRpbWVkZWx0YShkYXlzPW1heF9kYXlzKQogICAgCiAgICAjIEZvcm1hdCBkYXRlcyAtIHNob3cgZGF5IGFuZCBkYXRlCiAgICBtaW5fZm9ybWF0dGVkID0gbWluX2RhdGUuc3RyZnRpbWUoJyVhLCAlLWQnKSAgIyBUaHUsIDI3CiAgICBtYXhfZm9ybWF0dGVkID0gbWF4X2RhdGUuc3RyZnRpbWUoJyVhLCAlYiAlLWQnKSAgIyBUaHUsIFNlcCA5CiAgICAKICAgIHJldHVybiBmIkVzdC4gZGVsaXZlcnkge21pbl9mb3JtYXR0ZWR9IC0ge21heF9mb3JtYXR0ZWR9IgoKIyBUZXN0IHRoZSBmdW5jdGlvbgpwcmludChnZW5lcmF0ZV9kZWxpdmVyeV9pbnRlcnZhbCgpKQo=