Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python日期时间模块_Python_Python 2.7_Python 3.x_Datetime - Fatal编程技术网

Python日期时间模块

Python日期时间模块,python,python-2.7,python-3.x,datetime,Python,Python 2.7,Python 3.x,Datetime,我的项目是让用户输入他们的出生日期,计算机输出他们活了多少天,他们有多大,离下一个生日还有多少天,以及他们出生的工作日 我已经设法做到了所有这些,但当我到了离他们下一个生日还有多少天的时候,我必须让用户输入他们的下一个生日——我需要这样做,以便它使用原始输入而不是新输入 我怎样才能得到它,这样他们就不需要输入他们的下一个生日 我已经计算出,如果你把用户的年龄加到生日年,它可以给你天数,而不需要输入你的下一个生日。但我不知道该怎么加上去。我可以在一年中添加一个数字,即1或14,但不能添加变量 ne

我的项目是让用户输入他们的出生日期,计算机输出他们活了多少天,他们有多大,离下一个生日还有多少天,以及他们出生的工作日

我已经设法做到了所有这些,但当我到了离他们下一个生日还有多少天的时候,我必须让用户输入他们的下一个生日——我需要这样做,以便它使用原始输入而不是新输入

我怎样才能得到它,这样他们就不需要输入他们的下一个生日

我已经计算出,如果你把用户的年龄加到生日年,它可以给你天数,而不需要输入你的下一个生日。但我不知道该怎么加上去。我可以在一年中添加一个数字,即1或14,但不能添加变量

next_birthday = birthday.replace(year=birthday.year+ 14)

import datetime
from datetime import date

birthday=input("When is your birthday ['yyyy-mm-dd' format] : ")
birthday=datetime.datetime.strptime(birthday,"%Y-%m-%d").date()
today = datetime.date.today()
age = (today - birthday)

print("You are " + str(age.days) + " days old")

days = (age.days)
years = days/365

print("Or " + str(years) + " years old")

weekday = date.weekday(birthday)
days= ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]
print ("You were born on the day number %d" % weekday)
print ("Which was a " + days[weekday])


birthdate=input("When is your next Birthday ['yyyy-mm-dd' format] : ")
birthdate=datetime.datetime.strptime(birthdate,"%Y-%m-%d").date()
while birthdate == today:
    print ("Happy Birthday")
    break
else:
    import datetime
    today = datetime.date.today()

    daystill = (birthdate- today).days
    print (daystill, "Days untill your Birthday")

只需在年份中添加1:

birthday=datetime.datetime.strtime('2000-01-01',%Y-%m-%d').date()


next_birth=birth.replace(year=age.year+1)

如果我这样做,程序只会输出一个负数的天数,直到下一个生日。这将庆祝1岁生日,而不是下一个生日