Home > Backend Development > Python Tutorial > How to add days to date in Python

How to add days to date in Python

PHPz
Release: 2023-05-17 16:47:22
forward
899 people have browsed it

Use the timedelta() method in the datetime module to add the number of days to the date, for example result_1 = date_1 timedelta(days=3). timedelta The method can be passed a days parameter and adds the specified number of days to the date.

from datetime import datetime, date, timedelta

# ✅ 将天数添加到日期
my_str = '09-24-2023'  # ????️ (mm-dd-yyyy)
date_1 = datetime.strptime(my_str, '%m-%d-%Y')

print(date_1)  # ????️ 2023-09-24 00:00:00

result_1 = date_1 + timedelta(days=3)
print(result_1)  # ????️ 2023-09-27 00:00:00

# -----------------------------------------------

# ✅ 将天数添加到当前日期

current_date = datetime.today()
print(current_date)  # ????️ 2022-06-20 09:42:22.341830

result_2 = current_date + timedelta(days=7)
print(result_2)  # ????️ 2022-06-27 09:43:09.084770


# -----------------------------------------------

# ✅ 使用 date 而不是 datetime

date_3 = date(2023, 9, 24)
print(date_3)  # ????️ 2023-09-24

result_3 = date_3 + timedelta(days=3)
print(result_3)  # ????️ 2023-09-27

# -----------------------------------------------

# ✅ 将天数添加到当前日期(使用 date 而不是 datetime)

date_4 = date.today()
print(date_4)  # ????️ 2022-06-20

result_4 = date_4 + timedelta(days=7)
print(result_4)  # ????️ 2022-06-27
Copy after login

Make sure to import the datetime or date and timedelta classes from the datetime module.

When using this method, the month (and year) will roll over as necessary.

The first example uses the datetime.strptime() method to obtain the datetime object corresponding to the provided date string and parse it according to the specified format.

Once we have the datetime object, we can use the timedelta class to add the number of days.

from datetime import datetime, timedelta
my_str = '09-24-2023'  # ????️ (mm-dd-yyyy)

date_1 = datetime.strptime(my_str, '%m-%d-%Y')
print(date_1)  # ????️ 2023-09-24 00:00:00

result_1 = date_1 + timedelta(days=3)
print(result_1)  # ????️ 2023-09-27 00:00:00
Copy after login

The date string format in the example is mm-dd-yyyy.

If we have a date string formatted differently, use this documentation table to find the format code you should pass as the second argument to the strptime() method.

The second example adds the number of days to the current date.

from datetime import datetime, timedelta
current_date = datetime.today()
print(current_date)  # ????️ 2022-06-20 09:42:22.341830

result_2 = current_date + timedelta(days=7)
print(result_2)  # ????️ 2022-06-27 09:43:09.084770
Copy after login

datetime.today() Method returns the current local date and time.

The third example uses the date() method instead of the datetime method when adding days to a date. The

from datetime import date, timedelta

date_3 = date(2023, 9, 24)
print(date_3)  # ????️ 2023-09-24

result_3 = date_3 + timedelta(days=3)
print(result_3)  # ????️ 2023-09-27
Copy after login

datetime.timedelta method can be passed the number of days we want to add to the date or datetime object.

timedelta The method can pass days, weeks, hours, minutes, seconds, milliseconds and microseconds as parameters.

All parameters are optional and default to 0.

It is best to only use keyword arguments in calls to the timedelta class, as the order of the arguments can be confusing.

If we only need to extract the date after the operation, call the date() method on the datetime object.

from datetime import datetime, timedelta

now = datetime.now()
print(now)  

result = now + timedelta(days=5)
print(result)  

print(result.date())
Copy after login

datetime.date method returns a date object with the same year, month and day.

If we need to format the date in some way, use a formatted string literal.

from datetime import datetime, timedelta

now = datetime.now()
print(now)  

result = now + timedelta(days=6)
print(result)  

print(result.date())  

print(f'{result:%Y-%m-%d %H:%M:%S}')
Copy after login

Formatted string literals (f-strings) Let us include an expression in a string by prefixing it with f.

Make sure to enclose the expression in braces - {expression}.

Formatted string literals also enable us to use the format specification mini-language within expression blocks.

The fourth example adds the number of days to a date object representing the current date. The

from datetime import date, timedelta
date_4 = date.today()
print(date_4) 

result_4 = date_4 + timedelta(days=7)
print(result_4)
Copy after login

date.today method returns a date object representing the current local date.

The above is the detailed content of How to add days to date in Python. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:yisu.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template