date_helper.py 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. '''
  4. @File : oracle_helper.py
  5. @Time : 2025/01/18 08:40:32
  6. @Author : dulip3ng
  7. @Version : 1.0
  8. @Desc : None
  9. '''
  10. from datetime import datetime, timedelta
  11. def get_future_date(days_to_add=0):
  12. """
  13. 输出格式 2025-01-23
  14. :param days_to_add:
  15. :return:
  16. """
  17. current_date = datetime.now()
  18. future_date = current_date + timedelta(days=days_to_add)
  19. return future_date.strftime('%Y-%m-%d')
  20. def get_future_datetime(days_to_add=0):
  21. """
  22. 返回格式 2025-01-23 09:07:06
  23. :param days_to_add:
  24. :return:
  25. """
  26. current_date = datetime.now()
  27. future_date = current_date + timedelta(days=days_to_add)
  28. return future_date.strftime('%Y-%m-%d %H:%M:%S')
  29. def get_future_weekday(days_to_add):
  30. """
  31. 获取几天后的非周末日期,遇周末顺延
  32. 返回格式 2025-01-23
  33. :param days_to_add:
  34. :return:
  35. """
  36. current_date = datetime.now()
  37. future_date = current_date + timedelta(days=days_to_add)
  38. while future_date.weekday() > 4:
  39. future_date += timedelta(days=1)
  40. return future_date.strftime('%Y-%m-%d')
  41. def get_future_weekday_datetime(days_to_add):
  42. """
  43. 获取几天后的非周末日期,遇周末顺延
  44. 返回格式 2025-01-23 09:07:06
  45. :param days_to_add:
  46. :return:
  47. """
  48. current_date = datetime.now()
  49. future_date = current_date + timedelta(days=days_to_add)
  50. while future_date.weekday() > 4:
  51. future_date += timedelta(days=1)
  52. return future_date.strftime('%Y-%m-%d %H:%M:%S')